日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

全国计算机等级考试题库二级C操作题100套(第79套)

發(fā)布時間:2023/12/10 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 全国计算机等级考试题库二级C操作题100套(第79套) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

第79套:

給定程序中,函數fun的功能是:求ss所指字符串數組中長度最短的字符串所在的行下標,作為函數值返回,并把其串長放在形參n所指變量中。ss所指字符串數組中共有M個字符串,且串長<N。
請在程序的下劃線處填入正確的內容并把下劃線刪除,使程序得出正確的結果。
注意:源程序存放在考生文件夾下的BLANK1.C中。
不得增行或刪行,也不得更改程序的結構!
給定源程序:

#include <stdio.h> #include <string.h> #define M 5 #define N 20 int fun(char (*ss)[N], int *n) { int i, k=0, len= N; for(i=0; i<___1___; i++) { len=strlen(ss[i]); if(i==0) *n=len; if(len ___2___ *n) { *n=len; k=i; } } return(___3___); } main() { char ss[M][N]={"shanghai","guangzhou","beijing","tianjing","chongqing"}; int n,k,i; printf("\nThe original strings are :\n"); for(i=0;i<M;i++)puts(ss[i]); k=fun(ss,&n); printf("\nThe length of shortest string is : %d\n",n); printf("\nThe shortest string is : %s\n",ss[k]); }

解題思路:
第一處:字符串數組共有M個字符串,所以在循環(huán)中終止值應填:M。
第二處:由于本題是取長度最短的字符串,*n總是保存長度最短值,所以應填:<。
第三處:其中k是保存長度最短的字符串所在的行下標,所以應填:k。


給定程序MODI1.C中函數 fun 的功能是:將tt所指字符串中的小寫字母都改為對應的大寫字母,其它字符不變。
例如,若輸入"Ab, cD",則輸出"AB, CD"。
請改正程序中的錯誤,使它能得出正確的結果。
注意:不要改動 main 函數,不得增行或刪行,也不得更改程序的結構!
給定源程序:

#include <stdio.h> #include <string.h> char* fun( char tt[] ) { int i; for( i = 0; tt[i]; i++ ) if(( 'a' <= tt[i] )||( tt[i] <= 'z' ) ) tt[i] += 32; return( tt ); } main( ) { char tt[81]; printf( "\nPlease enter a string: " ); gets( tt ); printf( "\nThe result string is:\n%s", fun( tt ) ); }

解題思路:
第一處:判斷是小寫字母,則條件應該是與的關系。
第二處:小寫字母的ASCII值減去32正好是其大寫字母。


請編寫函數fun,其功能是: 將所有大于1小于整數m的非素數存入xx所指數組中, 非素數的個數通過k傳回。
例如,若輸入:17,則應輸出:4 6 8 9 10 12 14 15 16。
注意: 部分源程序在文件PROG1.C中。
請勿改動主函數main和其它函數中的任何內容, 僅在函數fun的花括號中填入你編寫的若干語句。
給定源程序:

#include <stdio.h> void fun( int m, int *k, int xx[] ) { } main() { int m, n, zz[100]; printf( "\nPlease enter an integer number between 10 and 100: " ); scanf( "%d", &n ); fun( n, &m, zz ); printf( "\n\nThere are %d non-prime numbers less than %d:", m, n ); for( n = 0; n < m; n++ ) printf( "\n %4d", zz[n] ); NONO(); }

解題思路:
本題是考察考生如何判斷一個數不是素數,如果所給出的數是非素數且小于指定的數,那么這些數應存放到指定的數組xx中保存,最后由形參xx返回。在給出的程序中函數isP就是判斷一個數是否是素數,若是非素數,則返回1,否則返回0。本題是用for(i=2;i<m;i++)循環(huán)語句分別判斷i是否為非素數,如果i是非素數,則把該數i存入數組xx中。其中,i是控制變量,m是試題給出的整數。
參考答案:

#include <stdio.h> int isP(int m) { int j, tag = 0 ; for(j = 2 ; j < m && !tag ; j++) if(m % j == 0) tag = 1 ; return tag ; } void fun( int m, int *k, int xx[] ) { int i, cnt = 0 ; for(i = 2 ; i < m ; i++) if(isP(i)) xx[cnt++] = i ; *k = cnt ; }

總結

以上是生活随笔為你收集整理的全国计算机等级考试题库二级C操作题100套(第79套)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。