资源描述:
《计算机二级C语言上机改错题题库》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、二级C语言上机100题1、改错下列给定程序中,函数fun的功能是:依次取出字符串中所有数字字符,形成新的字符串,并取代原字符串。请改正程序中的错误,使程序能得出正确的结果。注意,不要改多main函数,不得增行或删行,也不得更改程序的结构!试题程序#include #include void fun (char *s){ int i,j; for (i=0,j=0;s[i]!=' ';i++)**************************************** if
2、(s[i]>='0' && s[i]<='9') s[j]=s[i]; ——————j改为j++*************************************** s[j]=" "; ——————s[j]=' '}main(){char item[80]; clrscr(); printf("Enter a string:");gets(item); printf("The string is :%s",item); fun
3、 (item); printf("The string of changing is :%s",item);}2、改错下列给定程序中,函数fun的功能是:分别统计字符串中大写字母和小写字母的个数。例如,给字符串s输入:AAaaBBb123CCccccd,则应该输出结果:upper=6,lower=8。请改正程序中的错误,使程序能得出正确的结果。注意,不要改多main函数,不得增行或删行,也不得更改程序的结构!试题程序#include #include ****************
4、******************void fun (char *s,int a, int b) ————a应为*a,b应为*b{ while(*s) { if (*s>='A' && *s<='Z')*********************************** a++; ————(*a)++;第70页共70页 if (*s>='a' && *s<='z')************************************ b++;
5、 ————(*b)++; s++; }}main(){ char s[100];int upper=0,lower=0; clrscr(); printf("nPlease a string:");gets(s); fun(s,&upper, &lower); printf("n upper=%d lower=%dn",upper,lower);}1、改错5假定整数数列中的数不重复,并存放在数组中。下列给定程序中,函数fun的功能是:删除数列中值为x的元素。n中存放的是数列中
6、元素的个数。请改正程序中的错误,使程序能得出正确的结果。注意,不要改多main函数,不得增行或删行,也不得更改程序的结构!试题程序#include #define N 20intfun (int *a,int n, int x){int p=0,i; a[n]=x; while (x!=a[p]) p=p+1;/**********found**********/ if (P==n) return -1;-------------p==n else {for (i=p;i7、*************************** a[i+1]=a[i]; ————a[i]=a[i+1]; return n-1; }}main(){int w[N]={-3,0,1,5,7,99,10,15,30,90},x,n,i; n=10; printf("The original data:n"); for (i=0;i8、%dn",x);第70页共70页 n=fun(w,n,x); if (n==-1) printf("***Nor be found!***nn"); else {printf("The data after deleted:n");