㈠ c語言豎式問題,題目要求到底是啥意思喲,看不懂
這題我也想了半天,你看例題,就是775*33這個乘法豎式中,每一步計算得到的數字都屬於2,3,7,5這個數字集合,沒出現其它數字
㈡ 加減乘除的豎式怎麼用c語言敲出來
使用ASCII碼 printf("%c, %c, %c, %c\n", 43, 47, 45, 42);
㈢ c語言,求一個類似小學豎式計算方法的四則運算的計算器程序,運用字元串一位一位的計算
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<string.h>
int scan()
{
char s[100];
int i,t,z=0;
do
{
z=0;
gets(s);
for(i=0;s[i]!='\0';i++)
if(s[i]<'0' || s[i]>'9') break;
if(i>=strlen(s))
for(t=0;s[t]!='\0';t++)
z=z*10+((int)s[t]-48);
else
printf("您的輸入有誤,請重新輸入");
}
while(i<strlen(s));
return(z);
}
int x=1,y=1,choice=0,sum=0,right=0,z=0,answer;
float precent;
char fuhao;
void suiji()
{
srand(time(NULL));
x=rand()%100+1;
y=rand()%100+1;
}
void choose()
{
int yunsuan(int,int,int);
if(sum==0) precent=0.0;
else precent=(float)right/sum;
printf("\n如需進行加減乘除運算測試,請分別輸入1、2、3、4\n");
printf("如需退出請輸入5\n");
choice=scan();
switch(choice)
{
case 1:printf("歡迎來到加法運算測試系統,如需退出請輸入9999\n");fuhao='+';break;
case 2:printf("歡迎來到減法運算測試系統,如需退出請輸入9999\n");fuhao='-';break;
case 3:printf("歡迎來到乘法運算測試系統,如需退出請輸入9999\n");fuhao='*';break;
case 4:printf("歡迎來到除法運算測試系統,如需退出請輸入9999\n");fuhao='/';break;
case 5:printf("本次測試愉快,歡迎下次再來測試\n");
printf("本次共做%d道題,其中%d道正確,正確率為%f\n",sum,right,precent);
break;
default:printf("您的輸入有誤,請重新輸入\n");choose();
}
}
int ans(int x,int y,int choice)
{
switch(choice)
{
case 1:z=x+y;break;
case 2:z=x-y;break;
case 3:z=x*y;break;
case 4:z=x/y;break;
}
return( z);
}
void yunsuan()
{
suiji();
printf("%d%c%d=",x,fuhao,y);
z=ans(x,y,choice);
answer=scan();
if(z==answer)
{
printf("正確\n");
right++;sum++;
yunsuan();
}
else if(answer==9999) choose();
else
{
printf("不正確, 正確答案為%5d\n",z);
sum++;
yunsuan();
}
}
void main()
{
printf("歡迎來到四則運算測試系統\n");
choose();
while(choice!=5)
yunsuan();
}
㈣ C語言豎式問題。定義ok在函數的含義是什麼求解。
// strchr.c
#include <syslib.h>
#include <string.h>
main()
{
char *s="Golden Global View";
char *p;
clrscr();
strchr(s,'V');
if(p)
printf("%s",p);
else
printf("Not Found!");
getchar();
return 0;
}
㈤ C語言怎麼進行加法計算
#include"stdio.h"
voidmain()
{
inta,b,c;
scanf("%d%d",&a,&b);
c=a+b;
printf("%d ",c);
getch();
}
㈥ 用C語言寫一個加法運算的代碼怎麼寫
例子如下:
知識擴展:
C語言是一門通用計算機編程語言,應用廣泛。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。
盡管C語言提供了許多低級處理的功能,但仍然保持著良好跨平台的特性,以一個標准規格寫出的C語言程序可在許多電腦平台上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業平台。
C語言屬於高級程序語言的一種,它的前身是「ALGOL」。其創始人是布朗·W·卡尼漢和丹尼斯·M·利奇。C語言問世時是帶有很大的局限性,因為它只能用於UNIX系統上。然而隨著科學技術的進步,計算機工業的發展,C語言逐漸脫離UNIX。1987年美國標准化協會制定了C語言的國際標准,簡稱「ANSI C」,從此以後它便成為一種廣泛使用的程序語言。
㈦ c語言 大數相加
c/c++中int和unsigned類型變數,都不能保存超過10位的整數,但有時我們需要計算位數非常長的整數或小數的加法。一般我們稱這種基本數據類型無法表示的整數為大整數。如何表示和存放大整數呢?基本的思想就是:用數組存放和表示大整數。一個數組元素,存放大整數中的一位。
現在假如我們要計算倆個200位數的加法。顯然,任何C/C++固有類型的變數都無法保存它。最直觀的想法是可以用一個字元串來保存它。字元串本質上就是一個字元數組,因此為了編程更方便,我們也可以用數組int an[200]來保存一個200 位的整數,讓an[0]存放個位數,an[1]存放十位數,an[2]存放百位數……那麼如何實現兩個大整數相加呢?方法很簡單,就是模擬小學生列豎式做加法,從個位開始逐位相加,超過或達到10 則進位。也就是說,用intan1[201]保存第一個數,用int an2[200]表示第二個數,然後逐位相加,相加的結果直接存放在an1 中。要注意處理進位。另外,an1 數組長度定為201,是因為兩個200 位整數相加,結果可能會有201 位。實際編程時,不一定要費心思去把數組大小定得正好合適,稍微開大點也無所謂,以免不小心沒有算準這個「正好合適」的數值,而導致數組小了,產生越界錯誤。
下面是具體程序:
#include<stdio.h>
#include<string.h>
#defineMAX_LEN200
intan1[MAX_LEN+10];
intan2[MAX_LEN+10];
charszLine1[MAX_LEN+10];
charszLine2[MAX_LEN+10];
intmain(void)
{
scanf("%s",szLine1);
scanf("%s",szLine2);
inti,j;
memset(an1,0,sizeof(an1));
memset(an2,0,sizeof(an2));
intnLen1=strlen(szLine1);
for(j=0,i=nLen1-1;i>=0;i--)
an1[j++]=szLine1[i]-'0';
intnLen2=strlen(szLine2);
for(j=0,i=nLen2-1;i>=0;i--)
an2[j++]=szLine2[i]-'0';
for(i=0;i<MAX_LEN;i++)
{an1[i]+=an2[i];//逐位相加
if(an1[i]>=10)
{//看是否要進位
an1[i]-=10;
an1[i+1]++;//進位
}
}
for(i=MAX_LEN;(i>=0)&&(an1[i]==0);i--);
if(i>=0)
for(;i>=0;i--)
printf("%d",an1[i]);
elseprintf("0");
return0;
}
㈧ 用0,1,2,……,9這十個數字組成一個加法豎式,每個數字只能用一次且全部使用!C語言編譯!
#include<stdio.h>
int main()
{
int a,b,c,d,e,f,g,h,i,j,arr[10]={0},n=0;
g=1;arr[1]=1;
for(a=5;a<10;a++)
{arr[a]=1;
for(b=0;b<10;b++)
if(!arr[b])
{arr[b]=1;
for(c=0;c<10;c++)
if(!arr[c])
{arr[c]=1;
for(d=a+1;d<10;d++)
if(!arr[d])
{arr[d]=1;
for(e=0;e<10;e++)
if(!arr[e])
{arr[e]=1;
for(f=0;f<10;f++)
if(!arr[f])
{arr[f]=1;
for(h=0;h<10;h++)
if(!arr[h])
{arr[h]=1;
for(i=0;i<10;i++)
if(!arr[i])
{arr[i]=1;
j=45-a-b-c-d-e-f-g-h-i;
if(j<10&&100*a+10*b+c+100*d+10*e+f==1000+100*h+10*i+j)
{n++;
printf(" %d%d%d +)%d%d%d ----- %d%d%d%d ",a,b,c,d,e,f,g,h,i,j);
}
arr[i]=0;
}
arr[h]=0;
}
arr[f]=0;
}
arr[e]=0;
}
arr[d]=0;
}
arr[c]=0;
}
arr[b]=0;
}
arr[a]=0;
}
printf("Total=%d ",n);
getch();
return 0;
}