您當前位置:廣東自考網 >> 備考資料 >> 工學類 >> 瀏覽文章
2019年自學考試02600《C語言程序設計》模擬試題13
發布日期:2018/12/19 10:47:06 來源:廣東自考網 閱讀: 【字體:


21.下面程序的輸出結果是____。



#include "stdio.h"



struct str1



{ char c[5];



char *s;



};



main( )



{ struct str1 s1[2]={ {"ABCD""EFGH"},{"IJK","LMN"} };



struct str2



{ struct str1 sr;



int d;



}s2={"OPQ","RST",32767};



struct str1 *p[2];



p[0]=&s1[0];



p[1]=&s1[1];



printf("%s",++p[1]->s); /* ① */



printf("%c",s2.sr.c[2]); /* ② */



}



① A) LMN    B) MN    C) N    D) IJK



② A) O       B) P      C) Q     D) R



22.以下程序的輸出結果是____。



struct st



{ int x,*y;



}*p;



int s[]={10,20,30,40};



struct st a[]={1,&s[0],2,&s[1],3,&s[2],4,&s[3]};



main()



{ p=a;



printf("%d\n",++(*(++p)->y));



}



A) 10    B) 11    C) 20     D) 21



三、程序填空題



在程序填空題中,已經給出了程序的主干,讀者首先要理解程序的思路,再選擇正確的內容填入空白處,使程序完成既定的功能。這類習題的設計就是要引導讀者逐步掌握編程的方法。本節習題的難度適中,可能有些典型的程序在課堂上已經有所接觸,讀者一定要獨立完成它,這樣就可以逐步提高自己的編程能力。



1.下面程序的功能是不用第三個變量,實現兩個數的對調操作。



#include <stdio.h>



main()



{ int a,b;



scanf("%d%d",&a,&b);



printf("a=%d,b=%d\n",a,b);



a= ① ;



b= ② ;



a= ③ ;



printf("a=%d,b=%d\n",a,b);



}



2.下面的程序的功能是求一維數組中的最小元素。



findmin(int *s,int t,int *k)



{ int p;



for(p=0,*k=p;p<t;p++)



if(s[p]<s[*k])



① ;



}



main()



{ int a[10],i,*k=&i;



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



scanf("%d",&a[i]);



findmin(a,10,k);



printf("%d,%d\n",*k,a[*k]);



}



3.下面程序的功能是計算1-3+5-7+ …… -99+101的值。



main()



{ int i,t=1,s=0;



for(i=1;i<=101;i+=2)



{ ① ;



s=s+t;



② ;



}



printf("%d\n",s);



}



4.下面程序的功能是將形參x的值轉換為二進制數,所得的二進制數放在一個一維數組中返回,二進制數的最低位放在下標為0的元素中。



fun(int x,int b[])



{ int k=0,r;



do



{ r=x% ① ;



b[k++]=r;



x/= ② ;



}while(x);



}



5.下面程序的功能是輸出1到100之間每位數的乘積大于每位數的和的數。例如數字26,數位上數字的乘積12大于數字之和8。



main()



{ int n,k=1,s=0,m;



for(n=1;n<=100;n++)



{ k=1;



s=0;



① ;



while( ② )



{ k*=m%10;



s+=m%10;



③ ;



}



if(k>s)



printf("%d",n);



}



}

相關“2019年自學考試02600《C語言程序設計》模擬試題13”的文章

廣東自考便捷服務