c语言试题。
一、单项选择题:(10分,每题2分)
1.设有以下定义:
int a[3][3] =
int (*ptr)[3] =a, *p = a[0];
则以下能够正确表示数组元素a[1][2]的表达式是。
a) *ptr + 1)[2])
b) *p + 5))
c) (ptr + 1)
d) *a + 1) +2)
2.有如下程序片段:
int i = 0;
while(i++ 2);
printf("%d", i);
则正确的执行结果是:
a) 2b) 3
c) 4d) 无结果。
3.合法的数组定义是。
a) int a language";
b) int a[5] =
c) char a = string";
d) char a
4.设有如下定义:
struct st
putchar('');
运行结果是:
#include<>
int square(int i);
main()
int i=0;
i = square(i);
for( ;i<5; i+=2 )
printf("%d", i);
int square(int i)
return i*i;
程序运行结果是:
#include<>
void inv(int *p, int n);
main()
int i;
int a[10]=;
for(i=0; i<10; i++)
printf("");
inv(a,10);
for(i=0; i<10; i++)
void inv(int *p, int n)
int *i, *j, m = n - 1) /2, t;
j = p + n - 1;
for(i = p; i <=p + m; i++,j--)
程序运行结果:
#include <>
struct name
char first[20];
char last[20];
struct beam
int limbs;
struct name title;
char ty[30];
main()
struct beam *pb;
struct beam deb = arcturan"};
pb=&deb;
printf("%d",
printf("%s", pb->ty);
printf("%s", pb->ty + 2);
运行结果是:
三、阅读程序,在标有下划线的空白处填入适当的表达式或语句,使程序完整并符合题目要求。(8分,每空1分)
1.下面这个程序的功能是对含有n个元素(最多10个)的一维数组按升序进行排序。
#include <>
#define array_size 10
void sort(int a,int n);
void inputarray(int a,int n);
void printarray(int a,int n);
main()
int a[array_size], n;
printf("input array lenth n<=10: "
scanf("%d", n);
printf("输入数组 a:");
inputarray(a, n);
sort(a, n);
printf("打印排序后的数组 a:");
printarray(a, n);
void sort(int a,int n)
int i, j, p, temp;
for(i = 0; i if
void inputarray(int a,int n)
int i;
for (i = 0; i < n; i++)
void printarray(int a,int n)
int i;
for (i = 0; i < n; i++)
printf("");
2. 下面程序的功能是从键盘输入一行字符,统计其中有多少单词。假设单词之间以空格分开。
[提示:判断是否有新单词出现的方法是---当前被检验的字符不是空格,而前一被检验字符是空格,则表示有新单词出现。]
#include<>
main()
char str[80];
int i, num;
gets(str);
if(str[0] !
elsefor(i = 1; str[ii++)
printf("num=%d", num);
四、在下面给出的4个程序中,共有16处错误(包括语法错误和逻辑错误),请找出其中的错误,并改正之。(30分,每找对1个错误,加1分,每修改正确1个错误,再加1分。只要找对15个即可,多找不加分。
)1.在给定的一组书名中,从键盘任意输入一个书名(书名可以有空格)。若找到,则打印该书名,否则打印”没找到”。
#include <>
#include <>
main()
int i, findflag=0;
char x
char str[13]=;
printf("请输入一个字符串:")
gets(x);
while(i<6 &&findflag)
if (findflag)
else2.打印100~200之间的所有素数。
#include <>
#include <>
main()
int m, i ;
for(m = 100; m <=200; m++)
if(flag)
3.从键盘输入任意一个学生的学号,在班级学生表中(学生表的学号是按升序排序的,且班级最多30人 ) 查找该学号是否存在,存在打印其考试成绩,否则打印“not find!”。
#include <>
#define arr_size 30;
int search( long *p, int n, long x );
main()
long num[arr_size], x;
float score[arr_size];
int i, n, pos;
printf("输入班级实际人数:")
scanf("%d",&n);
printf("输入学生学号和成绩");
for(i=0; i
printf("输入待查找学号:")
C语言复习试卷
此复习题并非全是考题,请同学们结合期末的复习题库的题一并复习。一 单项选择。1 一个c语言程序开始和结束的位置必然是 主函数 2 c语言规定,必须用 main 作为主函数名。3 由c源程序文件编译而成的目标文件的扩展名为 obj 经过连接后成为 exe 文件。4 以下叙述不正确的是 a 在c程序中,...
c语言复习试卷A
广东工业大学华立学院考试试卷 a 课程名称 c语言程序设计。考试时间 2010年月日 一 选择题 每小题2分,共40分 1.以下正确的说法是 a a 实参可以是常量 变量或表达式。b 形参可以为任意类型。c 实参只能是常量d 形参可以是常量。2.d 是正确的字符常量。a c b abc 11 d 语...
c语言复习试卷A
广东工业大学华立学院考试试卷 a 课程名称 c语言程序设计。考试时间 2010年月日 一 选择题 每小题2分,共40分 1.以下正确的说法是 a a 实参可以是常量 变量或表达式。b 形参可以为任意类型。c 实参只能是常量d 形参可以是常量。2.d 是正确的字符常量。a c b abc 11 d 语...