當前位置:首頁 » 編程語言 » c語言上機考試題

c語言上機考試題

發布時間: 2023-10-26 16:27:50

『壹』 c語言期末上機考試題答案徵集

//開發環境:BC++31

//第一題
#include <stdio.h>
#include <conio.h>

void main(void)
{
int i,j;

clrscr();
for(i=1;i<=9;i++)
{
for(j=1;j<=9;j++)
{
if(j==1)
{
printf("%2d ",i);
}
else
{
printf("%2d ",i*j);
}
}
printf("\n");
}
}

//第二題
#include <stdio.h>
#include <conio.h>

void main(void)
{
char str[6]={'A','B','C','D','E','Z'};
int i,j;

clrscr();
for(i=6;i>=1;i--)
{
for(j=i%6;j<=i%6+5;j++)
{
printf("%2c",str[j%6]);
}
printf("\n");
}
}

//第三題
#include<stdio.h>
#include<conio.h>
#include<string.h>

void circlewordif(char *p)
{
int l,i;

l=strlen(p);
for(i=0;i<=i/2;i++)
{
if(*p!=*(p+l-i-1))
{
break;
}
}
if(i<=i/2)
{
printf("NO!");
}
else
{
printf("YES!");
}
}

void main(void)
{
char str[100];

clrscr();
printf("Please input the string:");
gets(str);
circlewordif(str);
}

//第八題
#include <stdio.h>
#include <conio.h>
#include <math.h>

void main(void)
{
int num=0;

clrscr();
while((int)(sqrt(num+100))*(int)(sqrt(num+100))!=num+100||(int)(sqrt(num+168))*(int)(sqrt(num+168))!=num+168)
{
num++;
}
printf("The Answer is:%d\n",num);
printf("Please input the day:(1~31)");
scanf("%d",&num);
printf("The Answer is:%d\n",(num+4)%7);
}

//第九題
#include <stdio.h>
#include <conio.h>

void main(void)
{
int num[3][3];
int i,j,k;

clrscr();
for(i=0;i<3;i++)
{
printf("Please input line %d:",i);
scanf("%d,%d,%d",&num[i][0],&num[i][1],&num[i][2]);
}
printf("Before Change...\n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
printf("%2d ",num[i][j]);
}
printf("\n");
}
for(i=0;i<3;i++)
{
for(j=i+1;j<3;j++)
{
k=num[i][j];
num[i][j]=num[j][i];
num[j][i]=k;
}
}
printf("After Change...\n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
printf("%2d ",num[i][j]);
}
printf("\n");
}
}

//第十題
#include <stdio.h>
#include <conio.h>

void main(void)
{
int num[8];
int *max,*min;
int i,j;

clrscr();
printf("Please input 8 numbers:\n");
for(i=0;i<8;i++)
{
scanf("%d",&num[i]);
}
printf("Your numbers are...\n");
for(i=0;i<8;i++)
{
printf("%2d",num[i]);
}
max=num;min=num;
for(i=0;i<8;i++)
{
if(num[i]>*max)
{
max=&num[i];
}
if(num[i]<*min)
{
min=&num[i];
}
}
j=*min;*min=*max;*max=j;
printf("\nAfter Change...\n");
for(i=0;i<8;i++)
{
printf("%2d",num[i]);
}
}

//第十一題
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <time.h>

void main(void)
{
int n,i,j,t,*max,num;
int count[4]={0};

clrscr();
randomize();
printf("Please input the people's number:\nn=");
scanf("%d",&n);
printf("Vote Start...\n");
for(i=0;i<n;i++)
{
t=random(4);
if(t<0||t>3)
{
i--;
continue;
}
count[t]++;
printf("%-2c",t+65);
}
printf("\nVote Complete...\n");
for(i=0;i<4;i++)
{
max=count;num=0;
for(j=1;j<4;j++)
{
if(count[j]>*max)
{
max=&count[j];
num=j;
}
}
printf("%d.%c---->%d\n",i+1,num+65,*max);
*max=0;
}
}

『貳』 9月計算機二級《C語言》上機考題及答案

1、以下選項中屬於C語言的數據類型是()。

A. 復合型

B. 雙精度型

C. 邏輯型

D. 集合型

2、以下說法中正確的是()。

A. C語言程序總是從第一個的函數開始執行

B. 在C語言程序中,要調用的函數必須在main()函數中定義

C. C語言程序總是從main()函數開始執行

D. C語言程序中的main()函數必須放在程序的開始部分

3、選出下列標識符中不是合法的標識符的是()。

A. hot_do

B. cat1

C. _pri

D. 2ab

4、下列描述中不正確的是()。

A、字元型數組中可能存放字元串。

B、可以對字元型數組進行整體輸入、輸出。

C、可以對整型數組進行整體輸入、輸出。

D、 不能在賦值語句中通過賦值運算符“=”對字元型數組進行整體賦值。

5、若已定義:int a[9], *p=a;並在以後的語句中未改變p的值,不能表示a[1]地址的表達式為()。

A. p+1

B. a+1

C. a++

D. ++p

6、設有如下定義: int x=10,y=3,z; 則語句printf("%d ",z=(x%y,x/y)); 的輸出結果是()。

A. 1

B. 0

C. 4

D. 3

7、定義如下變數和數組: int i, x[3][3]={1,2,3,4,5,6,7,8,9};則下面語句for(i=0;i<3;i++) printf("%d",x[i][2-i]); 的輸出結果是()

A. 1 5 9

B. 1 4 7

C. 3 5 7

D. 3 6 9

8、讀出以下語句的輸出結果是()。

int x=10,y=10;

printf(“%d %d ”,x--,--y);

A. 10 10

B. 9 9

C. 9 10

D. 10 9

9、兩次運行下面的程序,如果從鍵盤上分別輸入6和3,則輸出結果是()。

if(x++>5) printf("%d",x);

else printf("%d ",x - -);

A. 7和5

B. 6和3

C. 7和4

D. 6和4

10、設有如下定義:char *aa[2]={"abcd","ABCD"};則以下說法中正確的是()。

A)aa數組成元素的值分別是"abcd"和ABCD"

B)aa是指針變數,它指向含有兩個數組元素的字元型一維數組

C)aa數組的兩個元素分別存放的是含有4個字元的一維字元數組的`首地址

D)aa數組的兩個元素中各自存放了字元’a’和’A’的地址

11、以下語句的輸出結果是()。

int a=-1,b=4,k;

k=(+ +a<0)&&!(b - -<=0);

printf("%d,%d,%d ",k,a,b);

A. 1,0,4

B. 1,0,3

C. 0,0,3

D. 0,0,4

12、下列程序的輸出結果是()。

char *p1="abcd", *p2="ABCD", str[50]="xyz";

strcpy(str+2,strcat(p1+2,p2+1));

printf("%s",str);

A. xyabcAB

B. abcABz

C. ABabcz

D. xycdBCD

13、執行下面的程序後,a的值是()。

#define SQR(X) X*X

main()

{ int a=10,k=2,m=1;

a/=SQR(k+m)/SQR(k+m);

printf("%d ",a); }

A. 10

B. 1

C. 9

D. 0

14、設A為存放(短)整型的一維數組,如果A的首地址為P,那麼A中第i 個元素的地址為()。

A.P+i*2

B. P+(i-1)*2

C. P+(i-1)

D. P+i

15、下列程序執行後輸出的結果是()。

int d=1;

fun (int p)

{ int d=5;

d + =p + +;

printf("%d,",d); }

main()

{ int a=3;

fun(a);

d + = a + +;

printf("%d ",d); }

A. 8, 4

B. 9, 6

C. 9, 4

D. 8, 5

16、表達式:10!=9的值是()。

A. true

B. 非零值

C. 0

D. 1

17、若有說明: int i,j=7, *p=&i;, 則與i=j; 等價的語句是()。

A. i= *p;

B. *p=*&j;

C. i=&j;

D. i=* *p;

18、不能把字元串:Hello!賦給數組b的語句是()。

A. char b[10]={’H’,’e’,’l’,’l’,’o’,’!’};

B. char b[10]; b="Hello!";

C. char b[10]; strcpy(b,"Hello!");

D.char b[10]="Hello!";

19、在C程序中有如下語句:char *func(int x,int y); 它是()。

A. 對函數func的定義。

B. 對函數func的調用。

C.對函數func的原型說明。

D. 不合法的。

20、以下程序的輸出結果是()。

char str[15]=”hello!”;

printf(“%d ”,strlen(str));

A. 15

B. 14

C. 7

D. 6

參考答案:

1、B 2、C 3、D 4、C 5、C 6、D 7、C 8、D 9、C 10、D

11、D 12、D 13、B 14、B 15、A 16、D 17、B 18、B 19、C 20、D

『叄』 二級C語言上機考試有題庫嘛

上機考試試題
1、填空題
下列給定程序中,函數fun()的作用是:將字元串tt中的大寫字母都改為對應的小寫字母,其他字元不變。例如,若輸入「Ab,cD」,則輸出「ab,cd」。
試題程序:
# include <stdio.h>
# include <stdio.h>
# include <conio.h>
Char【1】fun(char tt[])
{
int i;
for (i=0;tt[i];i++)
{
if ((tt[i]>=』A』)&&(tt[i]<=【2】))
tt[i]+=32;
}
return(tt);
}
main()
{
char tt[81];
printf (「\nPlease enter a string:」);
gets (tt);
printf (「\nThe result string is: \n%s」,fun(【3】));
}
2、改錯題
下列給定程序中,函數fun()的功能是逐個比較a,b兩個字元串對應位置中的字元,把ASCII值小或相等的字元依次存放到c數組中,形成一個新的字元串。
例如:a中的字元串為fshADfg,b中的字元為sdAEdi,則c中的字元串應為fdAADf。
請改正程序中的錯誤,使它能得到正確的結果。
注意:不要改動main函數,不得增行或刪行,也不得更改程序的結構。
試題程序:
# include <stdio.h>
# include <string.h>
void fun(char *p,char *q,char *c)
{ int k=0;
while(*p‖*q)
/***************found******************/
{ if (*p<=*q)
c[k]=*q;
else c[k]=*p;
if (*p) p++;
if(*q) q++;
/***************found*******************/
k++
}
}
main()
( char a[10]=」fshADfg」,b[10]=」sdAEdi」,c[80]={『\0』};
fun(a,b,c);
printf(「The string a:」); puts(a);
printf(「The string b:」); puts(b);
printf(「The string c:」); puts(c);
}
3、編程
請編寫函數fun,其功能是將兩個兩位數的正整數a、b合並形成一個整數放在c中。合並的方式是:將a數的十位和個位數依次放在c數的十位和個位數依次放在c數的百位和千位上。
例如,當a=16,b=35,調用該函數後,c=5361。
注意:部分源程序給出如下。
請勿改動主函數main和其他函數中的任何內容,僅在函數fun的花括弧中填入所編寫的若干語名。
試題程序:
# include<stdio.h>
void fun(int a,int b,long *c)
{

}
main()
{
int a,b;
long c;
clrscr();
printf(「Input a,b;」);
scanf(「%d%d」,&a&b);
fun(a,b,&c);
printf(「The result is:%d\n」,c);
}

『肆』 C語言程序設計期末考試上機題,求各路大神幫忙解決啊!!緊急緊急啊!!!

//採用的方法是最小提取法
#include "stdio.h"
void main()
{
int a[10]={9,8,7,6,1,2,3,4,5,6};
sort(a); //調用sort函數
printf("排序後數組a的各個元素:")
for(i=0;i<10;i++)
{
printf("%5d",a[i]);
}
}
void sort(int a[10])
{
int min;
int t;
for(i=0;i<10;i++)
{
min=i;
for(j=i+1;j<9;j++)
{
if(a[min]>a[j]) min=j;
}
//將最小數與第i個元素交換
if(i!=min)
{
t=a[i];
a[i]=a[min];
a[min]=t;
}
}
}

熱點內容
b樹磁碟存儲 發布:2025-01-31 19:42:53 瀏覽:837
聯想小新air15怎麼配置環境 發布:2025-01-31 19:06:57 瀏覽:968
什麼配置玩3a 發布:2025-01-31 19:05:22 瀏覽:586
phpoa系統 發布:2025-01-31 18:58:42 瀏覽:10
值e的編程 發布:2025-01-31 18:57:06 瀏覽:977
安卓手機的軟體認證在哪裡 發布:2025-01-31 18:57:01 瀏覽:535
android彈出來 發布:2025-01-31 18:56:56 瀏覽:232
辦公室白領新解壓方法 發布:2025-01-31 18:55:23 瀏覽:558
摩斯密碼短長是什麼意思 發布:2025-01-31 18:50:17 瀏覽:587
類的訪問修飾 發布:2025-01-31 18:42:46 瀏覽:933