c語言用戶輸入
㈠ 如何在在c語言裡面輸入漢字
定義一個字元串變數,這個變數的值中就可以輸入漢字了。
漢字是多位元組的,一個char放不下,可以使用字元數組,但需要給數組分配空間,或者使用string
例如:
#include<stdio.h>
intmain(void)
{
chara[7]="你好";
scanf("%*s",a);
printf("%s
",a);
return0;
}
(1)c語言用戶輸入擴展閱讀:
其實從語言學的角度來說,英文是線性的一維語言,而中文是平面的二維語言。而程序恰恰是線性的一維的。也就是說,線性的英文正好能契合線性的程序。所以,中文並不適合現有的編程方式。
然而,未來的發展可能超出你的想像。未來可能會有多維度的量子計算,也許二維的中文反而會比一維的英文更適合。
程序員對比過中文編程和英文編程就會明白,中文編程反而會提高門檻。因為編程的核心根本就不是什麼語言,而是程序化思維方式。最簡單的並不是英文編程,而是數學符號編程,極度抽象,普通人很難理解,但代碼量特別少。
㈡ c語言用戶任意輸入兩個數值,輸出最小數
#define
#include<stdio.h>
#include<stdlib.h>
#include"main.h"
intmain()
{
intnums[2];
intMax;
printf("請輸入第一個數: ");
scanf("%d",&nums[0]);
getchar();
printf("請輸入第二個數: ");
scanf("%d",&nums[1]);
getchar();
if(nums[0]>nums[1])
{
Max=nums[0];
}
else
{
Max=nums[1];
}
printf("最小的數是:%d ",Max);
system("pause");
}
(2)c語言用戶輸入擴展閱讀
輸入一個數字,輸出它的階乘結果
#define_CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
//輸入一個數字,顯示出它的階乘
voidmain(char*args)
{
intnum=0;
inti=0;
intresult=1;
printf("輸入需要階乘的數字:");
scanf("%d",&num);
if(num>0)
{
for(i=1;i<=num;i++)
{
result=result*i;
}
printf("階乘的結果:%d ",result);
}
else
{
printf("您輸入的數字不符合預期 ");
}
system("pause");
}
㈢ c語言 用戶輸入不多於3位數的整數,請將這個數字倒序輸出
#include
<stdio.h>
main()
{
int
a,b,c,d,e;
printf("請輸入一個不超過三位的整數:");
scanf("%d",&a);
while
(a>999
||
a<0)
{
printf("輸入錯誤,請重新輸入!\n");
scanf("%d",&a);
}
if
(a>99)
{
b=a/100;
c=a%100/10;
d=(a%100)%10;
e=d*100+c*10+b;
printf("結果是:%d\n",e);
getchar();
getchar();
}
if
(a>9
&&
a<=99)
{
c=a/10;
d=a%10;
e=d*10+c;
printf("結果是:%d\n",e);
getchar();
getchar();
}
else
{
printf("結果是:%d\n",a);
getchar();
getchar();
}
}
㈣ c語言輸入字元串scanf
c語言輸入字元串scanf:
有了chara;a就是這個數組的第一個元素的指針,&a就是這個數組的指針;因為一維數組的第一個元素的指針和這個數組的指針是同一個地址,區別是a+1指向a,而&a+1就指向a了。但&a和a的"值"是相同的,只是類型不同。
含義
scanf是c語言中的標准庫函數,主要作用是接收用戶輸入的數據。scanf是C語言中的輸入函數,可以從鍵盤獲得用戶輸入,和printf輸出功能正好相反。scanf的輸入格式是多種多樣的,使用時需根據情況選擇,最常用的是十進制整數型輸入%d。
前兩個scanf:輸入一個整數,按下回車鍵,scanf會讀取鍵盤輸入,並把數據賦值給c(或d);後兩個scanf:都是一樣功能,輸入格式不同,對於scanf(),輸入數據的格式要和控制字元串的格式保持一致。比如:輸入15,24回車,輸入15,24回車,同樣的把值分別賦給c和d。
㈤ c語言實現用戶指令實現 用戶輸入字元串 然後根據要求執行 怎麼做呢
以下代碼可以做你要的加減乘除運算,變數名可以任意輸入,可以有N個變數名,運算符和變數之間還可以空格,比如 :
i=1
j = i
print j
abc=22
j=i * abc
print j
print "helloworld"
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<vector>
usingnamespacestd;
typedefstruct{
intvar;
charvarname[128];
}Variable;
std::vector<Variable>Var;
//判斷變數還是數值
intisVarName(char*p)
{
if(p[0]<'0'||p[0]>'9')return1;
return0;
}
//去掉前後空格
char*FilterSpace(char*p)
{
inti;
while(*p=='')p++;//跳過前面的空格
i=strlen(p);
while(i&&p[i-1]==''){p[i-1]=0;i--;}//去掉後面的空格
returnp;
}
//取變數int值
intgetInt(char*p)
{
p=FilterSpace(p);
if(isVarName(p))
{
for(inti=0;i<Var.size();i++)
{
if(!strcmp(p,Var[i].varname))
{
returnVar[i].var;
}
}
}
else
{
returnatol(p);
}
return0;
}
//顯示
voidprint(char*p)
{
char*t;
p=FilterSpace(p);
if(p[0]!='"')
{
printf("%d ",getInt(p));
return;
}
t=strstr(p+1,""");
if(!t)
{
printf("error!");
return;
}
*t=0;
printf(p+1);
printf(" ");
}
//運算操作
voidOperation(char*p)
{
intn1,n2;
char*t;
Variable*v;
t=strstr(p,"=");
if(t)
{
v=NULL;
*t=0;
p=FilterSpace(p);
if(!isVarName(p))
{
printf("不能賦值給數值 ");
return;
}
for(inti=0;i<Var.size();i++)
{
if(!strcmp(p,Var[i].varname))
{
v=&Var[i];
break;
}
}
if(!v)
{
VariablenewV;
if(strlen(p)>sizeof(newV.varname))
{
printf("變數名不能大於%d個字元 ",sizeof(newV.varname));
return;
}
newV.var=0;
strcpy(newV.varname,p);
Var.push_back(newV);
v=&Var[Var.size()-1];
}
p=t+1;
t=strstr(p,"+");
if(t)
{
//加法運算
*t=0;
n1=getInt(p);
n2=getInt(t+1);
v->var=n1+n2;
//printf("%s=%d ",v->varname,v->var);//若要立即顯示結果就加上本行
return;
}
t=strstr(p,"-");
if(t)
{
//減法運算
*t=0;
n1=getInt(p);
n2=getInt(t+1);
v->var=n1-n2;
//printf("%s=%d ",v->varname,v->var);//若要立即顯示結果就加上本行
return;
}
t=strstr(p,"*");
if(t)
{
//乘法運算
*t=0;
n1=getInt(p);
n2=getInt(t+1);
v->var=n1*n2;
//printf("%s=%d ",v->varname,v->var);//若要立即顯示結果就加上本行
return;
}
t=strstr(p,"/");
if(t)
{
//除法運算
*t=0;
n1=getInt(p);
n2=getInt(t+1);
v->var=n1/n2;
//printf("%s=%d ",v->varname,v->var);//若要立即顯示結果就加上本行
return;
}
//賦值
v->var=getInt(p);
return;
}
}
voidmain()
{
charcmdstr[1024];
while(1)
{
printf(">>");
gets(cmdstr);
if(!strncmp(cmdstr,"print",5))
{
print(cmdstr+5);
}
elseif(!strcmp(cmdstr,"exit"))//輸入exit退出
{
return;
}
elseif(strstr(cmdstr,"="))
{
Operation(cmdstr);
}
}
}
㈥ c語言如何輸出:用戶輸入的小數位數
#include<stdio.h>
int main()
{
double num;
int bit;
printf("請輸入一個浮點數:");
scanf("%lf", &num);
printf("請輸入要設置的小數位數:");
scanf("%d", &bit);
printf("Num=%.*lf\n", bit, num);
return 0;
}
㈦ 怎麼用C語言輸入一個數字,然後執行後面的語句
1、首先打開C-Free5.0,然後一個空白的C語言頁面保存為switch.c文件,繼續輸入一般的C語言的基礎格式。
㈧ c語言 如何從鍵盤輸入字元串
c語言從鍵盤輸入字元串的步驟如下:
1.首先我們新建一個dev C++的項目。
㈨ c語言用戶輸入用戶名和密碼
1 以字元串方式,讀入用戶名和密碼;
2 通過strcmp函數,判斷是否相同。如相同,則合法。
3 給出提示信息。
說明:strcmp原型為
int strcmp(char *a, char *b);
功能為比較a和b兩個字元串,如果相同返回0;如果a大返回1;如果b大返回-1。
大小依照ascii比較。
參考代碼如下:
#include <stdio.h>#include <string.h>int main(){ char a[100],b[100]; scanf("%s%s",a,b); if(strcmp(a,"abc") == 0 && strcmp(b, "123456") == 0) printf("用戶合法\n"); else printf("用戶非法\n");}
㈩ C語言中怎麼輸入數字和字母
需要准備的材料分別有:電腦、C語言編譯器。
1、首先,打開C語言編譯器,新建一個初始.cpp文件,例如:test.cpp。