計算機等級考試c語言試題及答案
在計算等級C語言考試中,我們會遇到什么樣的題目類型呢?下面是學習啦小編給大家整理的計算機等級考試c語言試題及答案,供大家參閱!
計算機等級考試c語言試題
一、基本操作題
請補充main( )函數,該函數的功能是:輸入兩個正整數numl和num2,求這兩個數的最大公約和最小公倍數。
例如,若輸入的兩個正整數為12,4,則它們的最大公約數為12,最小公倍數為4。
注意:部分源程序給出如下。
請勿改動main( )函數和其他函數中的任何內容,僅在main( )函數的橫線上填人所編寫的若干表達式或語句。
試題程序:
#include
#include
void main( )
{
int a,b,numl,num2,t;
system("CLS"):
printf("\nInput two numbers:\n");
scanf("%d,%d",&numl,&num2);
if(numl {
a=num2;
b=numl:
}
else
{
a=numl;
b=num2;
)
while(【1】)
{
t= 【2】
a=b;
b=t:
}
printf(“greatest common divisor:
%d\n",a);
printf("least common multiple:
%d\n", 【3】;
}
二、程序改錯題
下列給定程序中函數proc的功能是:取出長整型變量s中偶數位上的數,依次構成一個新數放在t中。例如,當s中的數為l23456789時,t中的數為2468。請修改程序中的錯誤,使它能得出正確的結果。
注意:不要改動main( )函數,不得增行或刪行,也不得更改程序的結構。
試題程序:
#include
#include
#include
//****found****
void proc(long S,long t)
{long sl=10;
s/=10;
*t=s%10;
//****found****
while(s { s=s/l00;
*t=s%10*sl+*t;
sl=sl*10;
}
)
void main( )
{long S,t;
system("CLS"):
printf("\nPlease enter S:");
scanf("%ld",&s);
proc(S,&t);.
printf("The result is:%ld\n",t);
}
三、程序設計題 請編寫函數proc( ),其功能是:將str所指字符串中除下標為偶數、同時ASCIl碼值為奇數的字符外,其余的字符都刪除,串中剩余字符所形成的一個新串放在t所指的數組中。例如,若str所指字符串中的內容為ABCDEFGl2345,其中字符B的ASCIl碼值為偶數,所在元素的下標為奇數,因此必須刪除;而字符A的ASCIl碼值為奇數,所在數組中的下標為偶數,因此不應當刪除。依此類推,最后t所指的數組中的內容應是ACEG。
注意:部分源程序給出如下。
請勿改動main( )函數和其他函數中的任何內容,僅在函數proc( )的花括號中填人所寫的若干語句。
試題程序:
#include
#include
#include
#include
void proc(char*str,char t[])
{
)
void main( )
{
char str[100],t[100];
system("CLS");
printf("\nPlease enter string str:");
scanf("%S",str);
proc(str,t);
printf("\nThe result iS:%s\n",t);
計算機等級考試c語言試題答案
一、基本操作題程序填空題
【1】b!=0【2】a%b[3]numl*num2/a
【解析】由程序可知,變量b中存放兩個正整數中較小的那個數,while循環(huán)求兩個正整數的公約數。因此【1】填“b!=0”;【2】填“a%b”.【3】處是求兩個正整數最小公倍數的表達式,因此【3】填“numl*num2/a”。
二、程序改錯題
(1)錯誤:void proc(10ng S,long t)
正確:void proc(long s,long*t)
(2)錯誤:while(s<0)
正確:while(s>O)
【解析】從主函數中實參可知,形參的第二個變量是長整型的指針變量。因此“void proc(long s,long t)”應改為“void proc(long s,long*t)”;要從低位開始取出長整型變量s中偶數位上的數,每次變量S要除以100,然后判斷其是否大于0來決定是否要繼續(xù),因此“while(s0)”。
三、程序設計題
void proc(char*str。chart[3])
{
int i,j=0;
for(i=0;str[i]! =’\O’;i++)//從數組的第一個元素開始,到其最后一個
{if(i%2= =0&&str[i]%2 1=o)//下標為偶數、同時ASCIl碼值為奇數的字符
t[j++]=str[i];} //如果成立,則把它放到t數組中
t[i]=’\o’;//字符串結束標志為’
計算機等級考試c語言試題及答案
在計算等級C語言考試中,我們會遇到什么樣的題目類型呢?下面是學習啦小編給大家整理的計算機等級考試c語言試題及答案,供大家參閱!
計算機等級考試c語言試題
一、基本操作題
請補充main( )函數,該函數的功能是:輸入兩個正整數numl和num2,求這兩個數的最大公約和最小公倍數。
例如,若輸入的兩個正整數為12,4,則它們的最大公約數為12,最小公倍數為4。
注意:部分源程序給出如下。
請勿改動main( )函數和其他函數中的任何內容,僅在main( )函數的橫線上填人所編寫的若干表達式或語句。
試題程序:
#include
#include
void main( )
{
int a,b,numl,num2,t;
system("CLS"):
printf("\nInput two numbers:\n");
scanf("%d,%d",&numl,&num2);
if(numl {
a=num2;
b=numl:
}
else
{
a=numl;
b=num2;
)
while(【1】)
{
t= 【2】
a=b;
b=t:
}
printf(“greatest common divisor:
%d\n",a);
printf("least common multiple:
%d\n", 【3】;
}
二、程序改錯題
下列給定程序中函數proc的功能是:取出長整型變量s中偶數位上的數,依次構成一個新數放在t中。例如,當s中的數為l23456789時,t中的數為2468。請修改程序中的錯誤,使它能得出正確的結果。
注意:不要改動main( )函數,不得增行或刪行,也不得更改程序的結構。
試題程序:
#include
#include
#include
//****found****
void proc(long S,long t)
{long sl=10;
s/=10;
*t=s%10;
//****found****
while(s { s=s/l00;
*t=s%10*sl+*t;
sl=sl*10;
}
)
void main( )
{long S,t;
system("CLS"):
printf("\nPlease enter S:");
scanf("%ld",&s);
proc(S,&t);.
printf("The result is:%ld\n",t);
}
三、程序設計題 請編寫函數proc( ),其功能是:將str所指字符串中除下標為偶數、同時ASCIl碼值為奇數的字符外,其余的字符都刪除,串中剩余字符所形成的一個新串放在t所指的數組中。例如,若str所指字符串中的內容為ABCDEFGl2345,其中字符B的ASCIl碼值為偶數,所在元素的下標為奇數,因此必須刪除;而字符A的ASCIl碼值為奇數,所在數組中的下標為偶數,因此不應當刪除。依此類推,最后t所指的數組中的內容應是ACEG。
注意:部分源程序給出如下。
請勿改動main( )函數和其他函數中的任何內容,僅在函數proc( )的花括號中填人所寫的若干語句。
試題程序:
#include
#include
#include
#include
void proc(char*str,char t[])
{
)
void main( )
{
char str[100],t[100];
system("CLS");
printf("\nPlease enter string str:");
scanf("%S",str);
proc(str,t);
printf("\nThe result iS:%s\n",t);
計算機等級考試c語言試題答案
一、基本操作題程序填空題
【1】b!=0【2】a%b[3]numl*num2/a
【解析】由程序可知,變量b中存放兩個正整數中較小的那個數,while循環(huán)求兩個正整數的公約數。因此【1】填“b!=0”;【2】填“a%b”.【3】處是求兩個正整數最小公倍數的表達式,因此【3】填“numl*num2/a”。
二、程序改錯題
(1)錯誤:void proc(10ng S,long t)
正確:void proc(long s,long*t)
(2)錯誤:while(s<0)
正確:while(s>O)
【解析】從主函數中實參可知,形參的第二個變量是長整型的指針變量。因此“void proc(long s,long t)”應改為“void proc(long s,long*t)”;要從低位開始取出長整型變量s中偶數位上的數,每次變量S要除以100,然后判斷其是否大于0來決定是否要繼續(xù),因此“while(s0)”。
三、程序設計題
void proc(char*str。chart[3])
{
int i,j=0;
for(i=0;str[i]! =’\O’;i++)//從數組的第一個元素開始,到其最后一個
{if(i%2= =0&&str[i]%2 1=o)//下標為偶數、同時ASCIl碼值為奇數的字符
t[j++]=str[i];} //如果成立,則把它放到t數組中
t[i]=’\o’;//字符串結束標志為’\0’
}
【解析】題目中要求將字符串str中下標為偶數,同時ASCIl碼值為奇數的字符放在數組t中。首先,需要檢查字符串str中下標為偶數的字符其ASCIl碼值是否為奇數,將符合要求的字符放在數組t中。最后,為新的字符串數組添加結束符。
看了“計算機等級考試c語言試題及答案”的人還看了:
}
【解析】題目中要求將字符串str中下標為偶數,同時ASCIl碼值為奇數的字符放在數組t中。首先,需要檢查字符串str中下標為偶數的字符其ASCIl碼值是否為奇數,將符合要求的字符放在數組t中。最后,為新的字符串數組添加結束符。
看了“計算機等級考試c語言試題及答案”的人還看了:
計算機等級考試c語言試題及答案





上一篇:全國計算機二級c語言考試題庫
下一篇:計算機等級考試二級c語言題庫
精選文章
-
全國計算機二級c語言考試題庫
在全國計算機二級c語言考試的題庫中,有哪些類型的題目呢?下面是學習啦小編給大家整理的計算機二級c語言考試題庫選擇題及答案,供大家參閱! 計算機
-
全國計算機二級c語言考試題
在全國的計算機二級考試中,我們會遇到什么樣的知識點題目呢?下面是學習啦小編給大家整理的計算機二級c語言考試題目及答案,供大家參閱! 計算機二
-
全國計算機等級考試二級c語言公共基礎知識題例
在全國計算機等級中,有哪些二級c語言的公共基礎知識呢?下面是學習啦小編給大家整理的全國計算機等級考試二級c語言公共基礎知識題例,供大家參閱
-
計算機二級考試c語言考試試題
在計算機C語言的二級考試中,有哪些類型的考試試題呢?下面是學習啦小編給大家整理的計算機二級考試c語言程序填空題及答案和例題精講,供大家參閱