先看下我的運(yùn)行結(jié)果吧,會(huì)自動(dòng)判斷輸入的m、n是否合法哦!
大悟ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書未來市場(chǎng)廣闊!成為創(chuàng)新互聯(lián)公司的ssl證書銷售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18982081108(備注:SSL證書合作)期待與您的合作!
上代碼,注釋只寫了部分有助理解的。
#include stdio.h
int Found(int m, int n, int a[])
{
int i = 0;
int Count = 0;
int offset = 0;?//數(shù)組a的下標(biāo)
int qian, bai, shi, ge;?//千位、百位、十位、個(gè)位的值
for(i=m; i=n; i++)
{
//取出千位、百位、十位、個(gè)位的值
qian = i/1000;
bai = (i%1000)/100;
shi = (i%100)/10;
ge = i%10;
if((qian= bai bai=shi shi=ge) (qian+ge == bai+shi))?//找到一個(gè)符合條件的數(shù)
{
Count++;
a[offset++] = i;
}
}
return Count;
}
int main()
{
int m = 0;
int n = 0;
int nResult[100] = {0};
int Count = 0;
int i = 0;
FILE* pFile = NULL;
char szInfo[100] = {0};
while(1)
{
printf("Please enter m and n:");
scanf("%d %d", m, n);
printf("\n");
if(m=1000 n=1200 mn)
break;
else
printf("輸入數(shù)據(jù)不合法,請(qǐng)重新輸入\n");
}
Count = Found(m, n, nResult);
pFile = fopen("104.out", "w");
if(NULL == pFile)
printf("打開文件失敗\n");
sprintf(szInfo, "found %d numbers in %d ~ %d:\n", Count, m, n);
printf("%s", szInfo);
if(NULL != pFile)
{
fwrite("No. 104\n", 1, strlen("No. 104\n"), pFile);?//?寫入學(xué)號(hào)
fwrite(szInfo, 1, strlen(szInfo), pFile);???//寫入部分信息
}
for(i=0; iCount; i++)
{
printf("%d? ", nResult[i]);
sprintf(szInfo, "%d? ", nResult[i]);
if(NULL != pFile)??//輸出到屏幕的同時(shí),順便把該值寫進(jìn)文件
fwrite(szInfo, 1, strlen(szInfo), pFile);
}
printf("\n");
if(NULL != pFile)
fclose(pFile);
return 0;
}
自從工作以來,兩年沒上過百度知道了,當(dāng)初上大學(xué)的時(shí)候天天在百度知道問問題,今偶爾閑娛,幫忙解答,想不到這里還是這么熱鬧,不禁想起了當(dāng)年為一個(gè)鏈表、一個(gè)函數(shù)挑燈夜戰(zhàn)的場(chǎng)景。只能嘆時(shí)間太快,想不到都過去好幾年了。做程序最需要毅力,小師弟,好好努力吧,嘿嘿,下班回家咯!
int dec(int a[],int n)
{
if(n=1) return ____1_____;
if(a[0]a[1]) return 0;
return _____dec( a,n-1) ( a[n-1] = a[n-2] )______;
}
用結(jié)構(gòu)體比較方便易懂,我用結(jié)構(gòu)體幫你做了一下,你可以看一看,可以運(yùn)行的,我試過了。
#includestdio.h
#define N 4
#define M 5
struct student//建立學(xué)生數(shù)據(jù)結(jié)構(gòu)體
{
char name[15];
float score[M];
float ave;
}stu[N];
void average(struct student stu[])//求平均成績(jī)函數(shù)
{
int i,j,k;
float t;
for(i=0;iN;i++)
{
for(j=1;jM;j++)//冒泡排序?qū)?個(gè)評(píng)委評(píng)分從低到高排列,然后取中間的評(píng)分求平均值。
for(k=0;kM-j;k++)
if(stu[i].score[j]stu[i].score[j+1])
{
t=stu[i].score[j];
stu[i].score[j]=stu[i].score[j+1];
stu[i].score[j+1]=t;
}
for(j=1;jM-1;j++)//去掉最高和最低分后求平均分
{
stu[i].ave+=stu[i].score[j];
}
stu[i].ave/=M-2;
}
}
void sort(struct student stu[])//排序函數(shù)
{
int i,j;
struct student temp;
for(i=1;iN;i++)//冒泡排序法
for(j=0;jN-i;j++)
if(stu[j].avestu[j+1].ave)
{
temp=stu[j];
stu[j]=stu[j+1];
stu[j+1]=temp;
}
}
main()
{
int i,j;
for(i=0;iN;i++)//輸入學(xué)生數(shù)據(jù)
{
printf("請(qǐng)輸入第%d個(gè)學(xué)生的姓名:",i+1);
scanf("%s",stu[i].name);
for(j=0;jM;j++)
{
printf("請(qǐng)輸入該生第%d個(gè)評(píng)委的評(píng)分:",j+1);
scanf("%f",stu[i].score[j]);
}
}
average(stu);//執(zhí)行函數(shù)
sort(stu);
printf("\n按平均成績(jī)逆序輸出為:\n");//逆序打印數(shù)據(jù)
printf("姓名 \t成績(jī)\n");
for(i=0;iN;i++)
printf("%s \t%.2f\n",stu[i].name,stu[i].ave);
}
希望可以幫到你,呵呵
根據(jù)題目描述,計(jì)算出出發(fā)時(shí)共趕多少只鴨子,以及經(jīng)過每個(gè)村子賣出的鴨子數(shù)量。
#include stdio.hvoid sell_ducks(int village, int ducks) { if (village 7) { printf("\n"); return;
} else { int sold = ducks / 2; printf("sell=%d,", ducks - sold);
sell_ducks(village+1, sold);
}
}int main() { int ducks = 2; for (int i = 1; i = 7; i++) {
ducks = ducks * 2;
} int sold = ducks - 2; printf("sum=%d ", ducks);
sell_ducks(1, ducks); return 0;
}c
#include stdio.h
void sell_ducks(int village, int ducks) {
if (village 7) {
printf("\n");
return;
} else {
int sold = ducks / 2;
printf("sell=%d,", ducks - sold);
sell_ducks(village+1, sold);
}
}
int main() {
int ducks = 2;
for (int i = 1; i = 7; i++) {
ducks = ducks * 2;
}
int sold = ducks - 2;
printf("sum=%d ", ducks);
sell_ducks(1, ducks);
return 0;
}
首先,在main函數(shù)中,根據(jù)題目描述,使用一個(gè)循環(huán)計(jì)算出出發(fā)時(shí)共趕的鴨子數(shù)量。然后,計(jì)算出第七個(gè)村子賣出的鴨子數(shù)量。接著,調(diào)用sell_ducks函數(shù),從第一個(gè)村子開始賣出鴨子。在sell_ducks函數(shù)中,首先判斷是否已經(jīng)經(jīng)過了七個(gè)村子,如果經(jīng)過了七個(gè)村子,就不再賣出鴨子,直接返回。否則,計(jì)算出本次要賣出的鴨子數(shù)量,打印出賣出的鴨子數(shù)量,并遞歸調(diào)用sell_ducks函數(shù),處理下一個(gè)村子。
注意,上述程序中使用了遞歸函數(shù)來處理賣出鴨子的問題,可以方便地處理“每經(jīng)過一個(gè)村子賣去所趕鴨子的一半又一只”的問題。同時(shí),為了輸出格式美觀,程序中使用了逗號(hào)分隔每個(gè)村子賣出的鴨子數(shù)量,最后一個(gè)村莊賣出的鴨子數(shù)量后面沒有逗號(hào)。
當(dāng)前文章:有趣的c語(yǔ)言函數(shù)問題 c語(yǔ)言常見函數(shù)編程
文章網(wǎng)址:http://www.rwnh.cn/article10/ddiodgo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗(yàn)、定制開發(fā)、軟件開發(fā)、App開發(fā)、商城網(wǎng)站、服務(wù)器托管
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容