下列叙述中错误的是( )
A.一个C函数可以单独作为一个C程序文件存在
B.C程序可以由一个或多个函数组成
C.C程序可以由多个源程序文件组成
D.一个C语言程序只能实现一种算法
参考答案: D
设 f 是 int 型,i 是 float 型,则表达式10 + 'a' + i * f值的数据类型为( )
A.不确定
B.float
C.double
D.int
参考答案: C
以下程序的输出结果是()
#includevoid main(){ int i; for (i = 1; i < 6; i++){ if (i % 2){ printf("#"); continue; } printf("*"); } printf("n"); }
A.#####
B.#*#*#
C.*****
D.*#*#*
参考答案: B
定义变量int i=2; ,则以下是无限循环的是()
A.for ( ; i ; ++i) ;
B.for ( ; i>10; i++) ;
C.for (i=0; i<0 ; ) --i;
D.for (i=0;i==1;i++) ;
参考答案: A
若有 int a = 1, x = 1;,则循环语句 while (a < 10) x++; a++; 的循环执行()
A.无限次
B.9次
C.10次
D.不确定次
参考答案: A
a++不属于while循环
对以下程序段的叙述正确的是()
int x = 1;
do
{
x = -1 * x;
} while (!x);
A.是死循环
B.循环执行二次
C.循环执行一次
D.有语法错误
参考答案: C
以下正确的定义语句( )
A.long b[2][3]={{1},{1,2},{1,2,3}};
B.float x[3][ ]={{1},{2},{3}};
C.int a[1][4]={1,2,3,4,5};
D.double y[ ][3]={0};
参考答案: D
以下程序的输出结果是()
int a, b;
void fun(){
a = 100;
b = 200;
}
int main(){
int a = 100, b = 100;
fun();
printf("%d%dn", a, b);
return 0;
}
A.200100
B.100100
C.100200
D.200200
参考答案: B
在说明语句int *f();中,标识符 f 代表的是( )
A.一个用于指向整型数据的指针变量
B.一个用于指向一维数组的行指针
C.一个用于指向函数的指针变量
D.一个返回值为指针型的函数名
参考答案: D
设o=1,p=2,q=3,则逻辑表达式!(o
A. 正确
B. 错误
参考答案: A
在函数定义中,形参变量可以是静态变量。
A. 正确
B. 错误
参考答案: B
请用程序实现,使用指针变量对输入的 3 个整数进行从小到大排序。
示例1 输入4 3 6输出
从小到大排序后:3 4 6示例2 输入
6 5 2输出
从小到大排序后:2 5 6
#includevoid swap (int *p1, int *p2) { int p; p = *p1; *p1 = *p2; *p2 = p; } int main () { int n1, n2, n3, *p1, *p2, *p3; scanf("%d %d %d", &n1, &n2, &n3); p1 = &n1; p2 = &n2; p3 = &n3; if (n1 > n2) swap(p1, p2); if (n1 > n3) swap(p1, p3); if (n2 > n3) swap(p2, p3); printf("%d %d %dn", *p1, *p2, *p3); return 0; }



