2015年秋西南交大高级语言程序设计A

更新时间:2024-06-19 23:36:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第1次作业

12.

main()

{ int x=2,y=-1,z=2; if(x

写出程序输出结果 (1)

答案:2

13. 下面程序的运行结果是 。

答案:2,3 2,4 2,5

void fl(void) {int x=1;

static y=2; x++; y++;

printf(\ }

void main() { int k;

for(k=1;k<=3;k++) fl(); }

14. #include ”stdio.h”

void main()

{char a[61],*s;int n; gets(a);

for(s=a;*s;s++) if(*s>=?A? && *s<=?Z?) *s+=32; puts(a); }

若程序的输入为SWJTU,则输出结果为 (3) 。

答案:switu

15. #include “stdio.h”

#define N 5

int swap(int *p, int *q) {int t;

if(p }

void f(int a[ ],int m) {int *p, *q; p=a;q=a+m; while(swap(p,q)) {p++; q--} }

void main( ) {int m,a[N];

for(m=0;m f(a,N-1);

for(m=0;m }

若程序的输入为8 9 2 3 4, 则输出结果为 (4) 。

答案:4 3 2 9 8

16. 写一个程序,建立N元整型数组,然后输入一个整数x,查找x是否包含在数组中,若

在,则返回第一次出现的下标以及总的出现次数;否则,输出下标为-1, 总的出现次数为0.

答案:#include#define N 8 int Search(int a[N],int x,int *pc) {int i,first=-1; *pc=0

for(i=0;i

return first; }

void main() {int a[N],i,count,p;

printf(\for(i=0;i

printf(\}

17. 输入若干双精度实数,直到0时停止,计算并输出这些实数的平均值。

答案:#include void main()

{ int n=0;double a, sum=0,av;

printf(\while(1)

{ scanf(\丨\n++;sum+=a; }

if(n=0)printf(\else{av=sum/n;

printf(\} }

18. C语言的三种循环语句是,do while循环、 循环和 循环;结构化程序设计方法主张限制使用 语句。 答案:while for goto

19. 已知int a = 2, b = 3 , c=0; 执行下列语句后,写出各变量的值。 c = b++―a++ ; 变量a = ,b= ,c= 答案:3 4 1

20. 循环语句for( i=0; i>=10; i--); 其循环的次数为___

答案:0

21. C语言提供了三种预处理功能,它们是:宏定义、包含文件和 答案:条件编码

22. 若有定义:int a=0,b=0,c=0,d=0;则执行语句a=(b=3,c=5*b++,d=++c+1);后,变量a的值是 ,变量b的值是 ,变量c的值是 ,变量d的值是 。 答案:17 4 16 17

23. 若有定义:int a=1,b=2,c=3,d=4;,则表达式:a<=b?a:c<=d?a:d的值

是 ,执行表达式 (a>b)&& (c++) 后,c的值为 。 答案:1 3

24. 有如下语句:char A[ ]={ \该字符串的长度是 ,A[3]= 。 答案:5 T

25. 若有定义char ch='C'; 则puchar((ch>='A' && ch<='Z')? (ch + 32) : ch);语句的输出结果为 。 答案:c

26. 若有定义int a[]={ 1,2,3,4 }, *p=a+1; 则表达式*++p的值为 。 答案:3

27. 若有类型定义typedef int Mat[10]; 则 Mat a[5]; 表示的实际数组定义是 。 答案:int a[5][10]

第2次作业

11. 下面程序的输出是 (1) 。

#include \ void main()

{ char a[40]= \?p;

for(p=a; ?p!= 'i'; p++) putchar(?p ?32); }

答案:ADM

12. 下面程序的运行结果是 (2) 。

{ int x=1;

static y=2; x++; y++;

printf(\ }

void main() { int k;

for(k=1;k<=3;k++) fl(); }

答案:2,3 2,4 2,5

13. 下面程序的运行结果是 (3) 。

#include \ void main()

{ int m, n;

m=10;n= ?1; do { m??; n+=5;

if(!(n%3)) printf(\ } while(m>n);

}

答案:12 9

14. 下面程序的运行结果是 (4) 。

#include \

int a[4]={ 1, 2, 3, 4 }; void main()

{ int ?p=a, m, n;

for(m=3; m>=0; m ? ?)

for(n=0; n<=m; n++) printf(\?(p+n));

}

答案:1234,123,12,1

15. 数组名作为参数传递给函数,作为实参的数组名被处理为该数组的 (1) 答案:首地址

16. 一个C程序中必须有 (2) 函数,无论该函数在整个程序中的位置如何,C程序总是从该函数开始执行。

答案:主

17. 有如下语句:char A[ ]={ \}; 该字符串的长度是 (3) ,A[3]= (4) 。 答案:5 T

18. 若有定义int x=5, n=5;则执行语句 x+=n++; 后,x的值= (5) ,n的值= (6) 。 答案:10 6

19. C语言的静态变量以及静态数组元素默认的初值为 (7) 答案:0

20. 若有int a=2,b=1,c=0; 执行语句c=a++ - b - -;后,变量c的值为 (14) b的值 (15) 答案:1 0

21. 结构化程序设计的三种基本结构包括有: 、 __和 ____。 答案:选择结构 循环结构 顺序结构 22. 算术表达式:

的C语言表达式是:

答案:-b+sqrt(b*b-4*a*c)

23. 编写一程序,从键盘读入一个字符串并存入字符数组,然后依次输出第1, 3, 5, 7, …个字符。

例如:输入为: computer

输出为: cmue

答案:#include void main()

{ char s[255];int i; gets(s);

for(i=0;s[i];i+=2) putchar(s[i]); }

24. 编程打印如下图形到屏幕上。 (9分)

* *** *****

******* *********

要求打印行数由键盘输入。

答案:#include void main() { int n,i,j; scanf(\for(i=1;i<=n;i++)

{ printf(\

for(j=1;j<=2*i-1;j++) putchar(\printf(\} }

25. C源程序文件经过 处理后产生目标文件,目标文件

经 处理后生成可执行文件。 答案:编译 连接

26. 结构化程序设计只需采用顺序结构、分支结构和 结构这三种基本结构来编写程序。 答案:循环

第3次作业

11. 下列程序段的输出是 。

#include void main() { int k;

for(k=1; k<5; k++) {

if(k%2) printf(\ printf(\ }

}

答案:*#*#

12. 下列程序段的输出是 。

# include int f(int x) { static y=1; y++; x+= y; return x; }

void main() { int k; k=f(3);

printf(\}

答案:5,8

13. 表达式!!356的值是 。 答案:1

14. 符号 \和 'a' 的区别是 。

答案:前者a为串,占两字节存储。后者a为字符占1字节存储

15. 若有定义int x=5, n=5;则执行语句 x+=n++; 后,x的值= ,n的值= 。 答案:10 6

16. C语言的静态变量以及静态数组元素默认的初值为 。 答案:0

17. 下面程序的运行结果是 。

#include void main()

int a=2,b=-1,c=2; if(a<0)

printf(\,c);

答案:c=2

18. 下面程序的运行结果是 。

#include void main( ) { int a,b,c; a=3;b=1;c=2; if(a

printf(\}

答案:3 2 3

19. 在屏幕上打印如下图形,要求打印行数为5。

1 2 3 4 5 2 3 4 5 1 3 4 5 1 2 4 5 1 2 3 5 1 2 3 4

答案:#include void main() { int i,j,n;

for(i=1;i<=5;i++)

{for(j=1;j<=2*i-1;j++) printf(\for(j=i+1;j<=5;j++)

printf(\} }

20. 输入10个整数,由小到大排序并输出。 答案:#include #define N 10

void SelSort(int a[N]) { int i,j,minj,t; for(i=0;i

for(j=i+1,jvoid main() {int a[N],i;

for(i=0;i

for(i=0;i

21. C语言规定,标识符必须以 (1) 或 (2) 开头。 答案:字母 下划线

22. C语言的变量有4种存贮类型,即extern、static、register和 (3) 。 答案:auto

23. 当C语言的算术表达式中出现了char型变量时,系统自动将该型变量值转换为 (4) 数据类型以后才参与运算。 答案:int

24. 已知int a = 1, b = 2, c = 3, d = 4; 独立执行下列两条语句后,写出指定变量的值。

1)c=a?? ?b??; 变量 a= (12) , b= (13) 2)a?= ? ?d+1 ; 变量 a= (14) ,d= (15)

答案:2 3 4 3

25. C语言没有专门的逻辑变量,在进行逻辑判断时,用数值 表示逻辑假。 答案:0

26.

答案:5*log10(1+P/N)

第4次作业

11. C语言中变量有4种存储类型,即extern、static、register和 。 答案:auto

12. C语言程序是由 组成的。

答案:函数

13. 算法是解决问题的方法和步骤,具有 、确定性、有零个或多个输入、有一个或多个输出及有效性等特性。 答案:有穷性 14. 写出下列C语言表达式的值:10!=9 10>5>3 sizeof(0.5) !2<3+3%5

答案:1 0 8 1

15. 结构化程序的三种基本结构分别是顺序结构、 和 。 答案:判断(选择、分支)结构 循环(重复)结构

16. C语言的字符串结尾用字符 表示串结束。 答案:0

17. 若结构体的定义为struct student

{ long num;

char name[10]; float score;

};

则表达式sizeof(struct student)的值为 。

答案:18

18. 该程序的输出是

#include void main() {

char a[]=\,b[]=\; char *p1,*p2; int i; p1=a;p2=b; for(i=0;i<8;i++)

if(*(p1+i)==*(p2+i)) printf(\%c\,*(p1+i)); }

答案:ga

19. 下面程序的运行结果是 。

#include void main()

{

int x=5; do{

printf(\; }while(x); }

答案:54321

20. 该程序的输出是

#include “stdio.h” void main()

{ char a[40]=”goodnighta”,*p;

for(p=a;*p!=?a?;p++) putchar(*p-32);

}

答案:GOODNIGHT

21. 下面程序的运行结果是 。

#include “stdio.h” void main() {

for(i=1;i<10;i++) { if(i%3!=0) continue; printf(“-”,i); } }

答案:

22. 输入一行字符,统计其中的英文字母个数(提示:即输入到字符?\\n?时停止输入) 答案:#include void main()

{ char ch; int n=0;

printf(\while(1)

{ ch=getchar(); if(ch==‘\\n’) break;

if(ch>=‘a’&&ch<=‘z’丨丨ch>=‘A’&&ch<=‘Z’) n++; }

printf(\}

23. 编程求水仙花数。所谓水仙花数是指各位数字立方和等于该数自身的三位正整数。

如:153=13+53+33

答案:#include void main()

{ int i,j,k,m,n; for(i=1;i<=9;i++) for(j=0;j<=9;j++) for(k=0;k<=9;k++)

{m=i*i*j*j*j+k*k*k; n=100*i+10*j+k;

if(m=n)printf(\} }

24. #include \

void main() { char ch, n;

for(n=0; (ch=getchar())!=10; n++) putchar(ch?32);

printf(\ }

若程序输入为swjtu?(?表示回车键),则程序输出是 。

答案:SWJTU5

25. 写出下列C语言表达式的求值结果。

2+023>>1 (6) 5 ! = 1 (7) !! (2 >3) (8)

125?2 (9) sizeof

(0.25) (10) 1/2*(3+5) (11)

答案:10 1 0 10 8 0

26. 结构化程序设计只需要使用三种程序结构,分别是顺序结构、分支结构和 (5) 结构。 答案:循环(重复)

{m=i*i*j*j*j+k*k*k; n=100*i+10*j+k;

if(m=n)printf(\} }

24. #include \

void main() { char ch, n;

for(n=0; (ch=getchar())!=10; n++) putchar(ch?32);

printf(\ }

若程序输入为swjtu?(?表示回车键),则程序输出是 。

答案:SWJTU5

25. 写出下列C语言表达式的求值结果。

2+023>>1 (6) 5 ! = 1 (7) !! (2 >3) (8)

125?2 (9) sizeof

(0.25) (10) 1/2*(3+5) (11)

答案:10 1 0 10 8 0

26. 结构化程序设计只需要使用三种程序结构,分别是顺序结构、分支结构和 (5) 结构。 答案:循环(重复)

本文来源:https://www.bwwdw.com/article/bg43.html

Top