C语言上机练习题 联系客服

发布时间 : 星期六 文章C语言上机练习题更新完毕开始阅读

#include \void main()

{ char str[81],str1[81]; int k=1,i=1,j; int flag=0; gets(str);

str1[0]=str[0]; while(str[i]!='\\0') { for(j=0;j

if(flag !=1) str1[k++]=str[i]; i++; }

for(i=0;i

printf(\}

如运行时输入:abcbaccba

14.若输入一个整数10,以下程序的运行结果是 。#include sub(int a) {int c; c=a%2; return c;} void main()

{int a,e[10],c,i=0;

printf(“输入一整数\\n”); scanf(“%d”,&a); while(a!=0) {c=sub(a); a=a/2; e[i]=c; i++;}

for(;i>0;i--) printf(“%d”,e[i-1]); }

15. 以下程序的正确运行结果是 。 #include #define MAX 10 int a[MAX],i; sub2() {

int a[MAX],i,max;

max=5;

5

for(i=0;i

sub1() {

for(i=0;i

sub3(int a[]) {

int i;

for(i=0;i

}

void main() {

printf(“\\n”); sub1(); sub3(a); sub2(); sub3(a);}

16. 以下程序的正确运行结果是 。 #include func(int a,int b) {

static int m=0,i=2;

i+=m+1; m=i+a+b; return(m); }

void main()

{

int k=4,m=1,p;

p=func(k,m); printf(“%d,”,p); p=func(k,m); printf(“%d\\n”,p);

}

17.阅读程序,说出程序的运行结果 ( )。

#include #define ADD(x) x+x

void main() {

int m=1,n=2,k=3;

int sum=ADD(m+n)*k; printf(\

}

18. 以下程序的正确运行结果是 。 int fun(int x,int y ,int *cp,int *dp) {*cp=x+y; *dp=x-y; }

6

#include void main() {int a,b,c,d; a=4;b=3;

fun(a,b,&c,&d);

printf(\}

19. 以下程序的正确运行结果是 。 #include void main()

{ int a[]={2,3,4,5}; int s, i, *p; s=1; p=a;

for(i=0;i<=3;i++) s+=*p++; printf(\}

20.以下程序的正确运行结果是 。 #include void main() {

void move(int *);

int a[3][3]={1,2,3,4,5,6,7,8,9},(*p)[3],*p1=*a,i,j; for(;p1<*a+9;p1++)printf(\ printf(\ p1=*a;

for(i=0;i<3;i++) {

for(j=0;j<3;j++)printf(\ printf(\ } p=a; move(p);

for(i=0;i<3;i++)

printf(\}

void move(int *pointer) {int i,j,t;

for(i=0;i<2;i++) for(j=i+1;j<3;j++) {t=*(pointer+3*i+j);

*(pointer+3*i+j)=*(pointer+3*j+i); *(pointer+3*j+i)=t; }

}

7

21.以下程序的正确运行结果是 。 #include #include void main()

{ char *p1,str1[20]=\ p1=\

strcat(str1+1,p1+1); strcpy(str2,str1); printf(\}

22.下列程序的输出结果是 #include struct abc

{ int a, b, c; }; main()

{ struct abc s[2]={{1,2,3},{4,5,6}}; int t;

t=s[0].a+s[1].b; printf(\}

1.摊论个卖西瓜,以西瓜的重量论价。10斤以上的每斤0.3元,8斤以上的每斤0.4元,6斤以上的每斤0.5元,4斤以上的每斤0.7元,4斤以下的每斤0.8元,从键盘输入西瓜的重量和顾客所付钱数,输出应付款和应找钱数。

2.编写程序完成任意两个数的+,-,*,/运算,要求从键盘输入四个运算符之一和任意两个数,输出运算结果。

3.给定一个日期,输出这个日期是该年的第几天(输入的数据格式为YYYYMMDD,确保输入的数据有效)。

4.找出1~99之间满足以下条件的数:该数的平方对于10的余数等于该数本身,或者该数的平方对于100的余数等于该数本身。

5.编写一个程序,输出菱形图案,第一行为一个字母A,第二行为三个字母B,依此类推,第n行为2n-1个相应的字母,以后每行字母个数递减。n由键盘输入。

6.从键盘输入若干整数(数据个数应少于50),其值在0至4的范围内,用-1作为输入结束的标志。统计每个整数的个数。试编程。

7.设计一个程序,将上学期本队学员高数课程的考试成绩排序,并给出每一个学员的名次。(如果有并列第一,则取消第二名,以此类推)

8.编程求具有4行4列数据的二维数组每一列元素之和并将其放入该列的第五行上。输出第五行元素。

9.找出一个二维数组中的鞍点,即该位置上的元素在该行上最大、在该列上最小。也可以没有鞍点。(用常规算法做的时候,要求数据不能相同)

8