1樓:匿名使用者
#include
void main()
;int min,max;
int i;
char c;
char op;
printf("請輸入一堆不超過兩位的正整數和運算要求(+、-、*、/、%%):\n");
dowhile(getchar()!='\n');
//尋找最大數和最小數
for(i=0;i<=9;i++)
if(a[i]==i)
for(i=9;i>=0;i--)
if(a[i]==i)
switch(op)
}//程式我已經除錯好了,vc++6.0可執行,你試試!不懂的可追問哦!
2樓:匿名使用者
#define null 0
swap(char *b,char *max,char *min)
if(*max
main()
if(a[i]==sign) break;
/* 在這裡我要感謝201007031324是他的回答給了我靈感
讓我想到將字元型數字減'0'後可以得到
將ascii運算轉變為阿拉伯數字運算的數字字元
再將這些字元(ascii值為阿拉伯數字的字元)賦值給字元型陣列b
*/b[j++]=a[i]-'0';
}i++;
}b[j]='\0';
max=min=b[0];
swap(b,&max,&min); /*呼叫函式swap找到最大值和最小值*/
switch(sign)
if(min<=0) printf("由於min非正整數所以除或求模會出錯\n");
/*使用%d的目的是為了將字元(ascii值為阿拉伯數字的字元)隱含轉換為ascii值*/
printf("%d %c %d = %d\n",max,sign,min,m);
getch();}/*
聯想:這讓我聯想到了數學裡的數形結合,
由於座標的出現才有了將數字轉換圖形的解題方法。
反思:本程式表面上是使用字元實際上採用ascii為0~9的數值運算,
再將字元轉為ascii值。實現了字元運算轉為數字運算。
不足之處:
沒有使用資料結構進行簡化**。
有興趣的可以採用資料結構書寫**。*/
3樓:
思路分析:首先建立一個緩衝陣列,由於題目要求輸入的資料個數不超過兩位,所以,資料的位數設為100即可,即buf[100]; 當檢測到輸入,(+,-,*,/)的時候,停止輸入,並將前面的樹,用求最大最小的演算法(查詢法)找出其最大值和最小值(這個演算法也可以在輸入的時候同時操作!),當輸入「=」的時候,呼叫根據前面的輸入的符合並進行相應的運算,列印出結果即可。
高階:上述程式完成,可以考慮,在資料資料加入些判斷,如果輸入錯誤可以輸出些異常。
good luck.
4樓:育知同創教育
關於c語言的程式設計題。巢狀迴圈題請把實際的題貼出來,才好幫助解決根本問題
一道c語言程式設計題,求大神指教!
5樓:匿名使用者
#include
void printdigits( int n );
int main()
void printdigits( int n )}
一道c語言程式設計題,初學者求教~
6樓:匿名使用者
#include
int main()
if(sum==i)
}return 0;}
一道c語言程式設計題,執行結果一直是0,求大神指教 5
7樓:gta小雞
scanf的格式字串應該使用%lf%d%lf的形式,中間不要加逗號,讀入資料時以空格或回車作為分隔。格式字串中新增逗號是不好的習慣,除非特殊格式需要否則不要使用逗號。
%lf表示以double型讀入一個資料,而你對應存放資料的變數是float型,型別不匹配。將其改為double型或將%lf改為%f。
一道c語言程式設計題:編寫的程式在dev-c可以正常執行,但網上提交時出現了re,求教問題出現在了哪?
8樓:
//修改下你的**,現在應該沒問題了,你的有些**我註釋掉了#include
int main ()
; //不超過100的字串至少需要101個位元組的記憶體空間,字串的結束符'\0'需要一個位元組的儲存空間
char s;
int i=0,j=0,k=0,l=0,m=0,o=0;
/*for(o=0;o<1000;o++)}*/
//輸入字串
while((s=getchar())!='\n' && i<=100)
/*for(j=0;ja.exe
abacaeedabcdcd
abced
c語言一道題目,求教教
9樓:匿名使用者
號和四門功課的成績從鍵盤讀入。
(2) 計算每個學生的總分和平均分。
(3) 按平均成績進行排序,輸出
10樓:愛吃米糕
親,這個最基本的,你要自己練習才能慢慢寫出程式啊
11樓:小輝丿仔
這個你得自己做 ,給你提醒一下,可以陣列做
12樓:匿名使用者
#include
#include
#define null0
#define len sizeof(struct student)
struct student
;int n;
struct student *creat(void)
p2->next=null;
return(head);
}void print(struct student *head)
while(p!=null);
}struct student *del(struct student *head,long num)
p1=head;
while(num!=p1->num && p1->next!=null)
if(num==p1->num)
else printf("%ld not been found!\n",num);
return(head);
}struct student *insert(struct student *head,struct student *stud)
else
if(p0->num<=p1->num)
else
}n=n+1;
return(head);
}struct student * ordination(struct student * head)
}if(first==null)
else
if(min==head)
else
}if(first!=null)
head=first;
return(head);
}struct student * ordinationc(struct student * head)
}if(first==null)
else
if(min==head)
else
}if(first!=null)
head=first;
return(head);
}struct student *cha(struct student *head,long cha)
p1=head;
while(cha!=p1->num && p1->next!=null)
if(cha==p1->num)
else printf("%ld not been found!\n",cha);
return(head);
}struct student *chap(struct student *head)
p1=head;
while( p1->next!=null)
p1=p1->next;
}if(x) printf("沒有平均分在85分以上的學生\n");
return(head);
}struct student *chapb(struct student *head)
p1=head;
while( p1->next!=null)
p1=p1->next;
}if(x) printf("沒有不及格的學生\n");
return(head);
}void main()
printf("\ninput the inserted record:");
stu=(struct student * )malloc(len);
>num,&stu->score1,&stu->score2,&stu->score3,&stu->score4,&stu->score5,stu->name);
while(stu->num!=0)
printf("\ninput the 查詢 number:");
scanf("%ld",&cha_num);
while(cha_num!=0)
printf("下面是85分以上的:\n\n");
head=chap(head);
printf("\n");
printf("下面是不及格的:\n\n");
head=chapb(head);
printf("\n");
printf("下面是學號排序");
head=ordination(head);
print(head);
printf("\n\n");
printf("總分排序");
head=ordinationc(head);
print(head);
}這是我上學期的作業,跟你的差不多
13樓:匿名使用者
14樓:匿名使用者
#include
#include
#include
using namespace std;
const int maxn = 10000 + 10;
struct nodea[maxn];
int n, b[maxn];
void init()
}void count()
}bool cmp(int x, int y)void work()
void print()
}int main()
求一道C 或C語言程式設計題,求一道c語言程式設計題目,急!!!先謝謝啦!!!
自我程式設計 根據你題意 c語言編寫 1,要使用遞迴函式。2,遞迴層數對應數學位數。我這裡自定義函式int checknum int num,int w 就是你要的型別。其功能是判斷數字num是否是w位數的數字,是返回1,否返回0。w控制遞迴的層數。按照位數輸出1到n的整數。include int ...
求教!一道C語言題目,求教一道c語言題,求詳細過程
你主函式裡m肯定還是1,func函式中的靜態變數應該是8了吧。你檢視變數值的位置是什麼樣的,如果在主函式裡檢視肯定是主函式中的m,即為1,因為發生作用域覆蓋了。你是第二次進入func後設定斷點,檢視m數值的可定為8。由程式執行結果為8 此時i 3,m 3 1 4,因此返回值為8 17 此時i 3 8...
求教一道c語言題目,求教一道C語言題目
include define sz size 80 int main void char safter sz size int i 0 printf input a string while sx i n gets sx 換用gets來接收字串比較方便printf input a char scan...