资源描述:
《(免费)2011 年 计算机 二级c上机_填空_改错_编程(100题》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、(免费)2011年计算机二级C上机_填空_改错_编程(100题1.填空题请补充main函数,该函数的功能是:把一个字符串中的所有小写字母字符全部转换成大写字母字符,其他字符不变,结果保存原来的字符串中。例如:当str[N]="123abcdefABCDEF!",结果输出:"123ABCDEFABCDEF!"。注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。试题程序:#include#include#include#define
2、N80voidmain(){intj;charstr[N]="123abcdefABCDEF!";char*pf=str;system("CLS");printf("***originalstring***");puts(str);【1】;while(*(pf+j)){if(*(pf+j)>='a'&&*(pf+j)<='z'){*(pf+j)=【2】;j++;}else【3】;}printf("******newstring******");puts(str);system("pause");}1.改错题下列给定程序中,函数fun()的功能是逐个
3、比较a,b两个字符串对应位置中的字符,把ASCII值小或相等的字符依次存放到c数组中,形成一个新的字符串。例如:a中的字符串为fshADfg,b中的字符串为sdAEdi,则c中的字符串应为fdAADf。请改正程序中的错误,使它能得到正确结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:#include#includevoidfun(char*p,char*q,char*c){intk=0;while(*p
4、
5、*q)/**********************found*********
6、**************/{if(*p<=*q)c[k]=*q;elsec[k]=*p;if(*p)p++;if(*q)q++;/**********************found***********************/k++}}voidmain(){chara[10]="fshADfg",b[10]="sdAEdi",c[80]={' '};fun(a,b,c);printf("Thestringa:");puts(a);printf("Thestringb:");puts(b);printf("Theresult:");puts(c)
7、;}1.编程题请编写函数fun,其功能是:将两个两位数的正整数a、b合并形成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数个位和十位上,b数的十位和个位数依次放在c数的百位和千位上。例如,当a=16,b=35,调用该函数后,c=5361。注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。试题程序:#include#includevoidfun(inta,intb,long*c){}voidmain(){inta,b;longc;sys
8、tem("CLS");printf("Inputa,b;");scanf("%d%d",&a,&b);fun(a,b,&c);printf("Theresultis:%ld",c);}2.填空题请补充main函数,该函数的功能是求方程ax2+bx+c=0的两个实数根。方程的系数a、b、c从键盘输入,如果判别式(disc=b2-4ac)小于0,则要求重新输入a、b、c的值。例如,当a=1,b=2,c=1时,方程的两个根分别是x1=-1.00,注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干
9、表达式或语句。试题程序:#include#include#includevoidmain(){floata,b,c,disc,x1,x2;system("CLS");do{printf("Inputa,b,c:");scanf("%f,%f,%f",&a,&b,&c);disc=b*b-4*a*c;if(disc<0)printf("disc=%fInputagain!",disc);}while(【1】);printf("*******theresult*******");x1=【2】;x
10、2=【3】;printf("x1=%6.2fx2=%6.2