中國電子學會(CEIT)考評中心歷屆真題(含解析答案)
C語言軟件編程等級考試二級 2023年05月
編程題五道 總分:100分
一、數字放大(20分)
給定一個整數序列以及放大倍數x,將序列中每個整數放大x倍后輸出。
時間限制: 1000
內存限制: 65536
輸入
包含三行:第一行為N,表示整數序列的長度(N< 100);
第二行為N個整數(不超過整型范圍),整數之間以一個空格分開;第三行包含一個整數(不超過整型范圍),為指定的整數x。
輸出
N個整數,為原序列放大之后的序列,整數之間以一個空格分開。
樣例輸入
3
1 5 7
2
樣例輸出
2 10 14
提示:注意答案的數據范圍
#include <stdio.h>
int main() {int n,x;int a[101];scanf("%d",&n);//輸入n個數保存到數組中for(int i=0; i<n; i++){scanf("%d",&a[i]);}//輸入放大倍數xscanf("%d" ,&x);//打印放大后的數for(int i=0; i<n; i++){printf("%d ",a[i]*x);}return 0;
}
二、單詞倒排(20分)
編寫程序,讀入一行英文(只包含字母和空格,單詞間以單個空格分隔),將所有單詞的順序倒排并輸出,依然以單個空格分隔。
時間限制: 10000
內存限制: 65536
輸入
輸入為一個字符串(字符串長度至多為100) 。
輸出
輸出為按要求排序后的字符串。
樣例輸入
I am a student
樣例輸出
student a am I
#include <stdio.h>
#include <string.h>
int main() {char s[101];char a[100][101];//二維數組保存每個單詞int c=0,j=0;//變量c表示單詞數,變量j表示每個單詞的下標gets(s);//輸入字符串for(int i=0; i<=strlen(s); i++){//包括字符串結束符if(s[i]==' '|| s[i]=='\0'){a[c][j++]='\0';//增加字符串結束符j=0;//單詞下標重新計數c++;//單詞數加一} else {a[c][j++]