『壹』 c語言使用scanf輸入卻但輸出時總得不到數據,總之不知道如何鍵盤輸入數據
所以字元串輸入, 是不能加&, 如:
char ch[100];
scanf("%s", ch);
ch本身就是指針, 你要修改的不是指針的值, 而是指針指向的字元串的值.
『貳』 在C語言中如何實現用鍵盤輸入一個字元串,並列印出來
在C語言中實現用鍵盤輸入一個字元串,並列印出來的解決方法如下:
1、首先定義一個字元串數組,如你可以給字元串100個數組空間。如圖括弧內數字即為你定義的數組大小。
(2)c語言不從鍵盤錄入怎麼得出值擴展閱讀:
字元數組的輸出:
(1)用putchar()或printf()的『%c』格式符對數組進行字元賦值。例如,對於數組a[10]:用putchar()賦值:
for(i=0;i<10;i++)
a[i]=putchar();
用printf()賦值:
for(i=0;i<10;i++)
printf("%c",a[i]);
輸出結果為:
c program[2]
(2)用printf()的'%s'格式對數組賦值。還是對於數組a[10];
printf("%s",a);
輸出結果為:
c program
參考資料來源:
網路-char
網路-字元數組
『叄』 C++,C語言 從鍵盤輸入不同類型數據,要求求出數據和及平均值,並輸出。
/*Note:YourchoiceisCIDE*/
#include"stdio.h"
intsum(int*a,int*b,int*c,int*d);
intpinglun(int*a,int*b,int*c,int*d);
intzuigan(int*a,int*b,int*c,int*d);
voidmain()
{
inta,b,c,d,g,j;
floate;
printf("請輸入四門成績:");
scanf("%d%d%d%d",&a,&b,&c,&d);
g=sum(&a,&b,&c,&d);
e=pinglun(&a,&b,&c,&d);
j=zuigan(&a,&b,&c,&d);
printf("總分:%d 平均分:%f 最高分:%d ",g,e,j);
}
intsum(int*a,int*b,int*c,int*d)
{
inte=0,*f;
f=&e;
*f=*a+*b+*c+*d;
return(*f);
}
intpinglun(int*a,int*b,int*c,int*d)
{
floate=0,*f;
floatw;
f=&e;
*f=*a+*b+*c+*d;
w=(double)(*f/4);
return(w);
}
intzuigan(int*a,int*b,int*c,int*d)
{
inth=0;
if(h<*a)
h=*a;
if(h<*b)
h=*b;
if(h<*c)
h=*c;
if(h<*d)
h=*d;
return(h);
}
『肆』 用C語言怎麼從鍵盤上獲取信息。
1、一般是使用getch獲取
方向鍵(←): 0xe04b
方向鍵(↑): 0xe048
方向鍵(→): 0xe04d
方向鍵(↓): 0xe050
一個方向鍵要用兩個getch才能把它的數據獲取完.
然後對應著兩個字元數據, 一個當高位, 一個當低位, 就可以判斷按下的是什麼鍵, 如:
char ch = getch();
if(ch == 0xe000) //如果高位相等
{
ch = getch(); //那麼再獲取一個
if (ch == 0x004b) //如果低位也相同(和方向鍵左一樣)
.... //要執行的動作.
}
else //如果不是, 把這個字元吸收了.
getch()
2、常式:#include <stdio.h>
#include <stdlib.h>
main()
{
int key,key2;
key = getch();
printf("\nkey value = 0x%02x -- %d\n",key,key);
key = getch();
printf("\nkey value = 0x%02x -- %d\n",key,key);
}
『伍』 請問下c語言從鍵盤讀入控制鍵鍵值如何實現
用bioskey()函數;在dos.h頭文件中!
函數原型:int bioskey (int cmd)
說明:bioskey()的函數原型在bios.h中
bioskey()完成直接鍵盤操作,cmd的值決定執行什麼操作。
cmd = 0:
當cmd是0,bioskey()返回下一個在鍵盤鍵入的值(它將等待到按下一個鍵)。它返回一個16位的二進制數,包括兩個不同的值。當按下一個普通鍵時,它的低8位數存放該字元的ASCII碼;對於特殊鍵(如方向鍵、F1~F12等等),低8位為0,高8位位元組存放該鍵的掃描碼。
cmd = 1:
當cmd是1,bioskey()查詢是否按下一個鍵,若按下一個鍵則返回非零值,否則返回0。
cmd = 2:
當cmd是2,bioskey()返回Shift、Ctrl、Alt、ScrollLock、NumLock、CapsLock、Insert鍵的狀態。各鍵狀態存放在返回值的低8位位元組中。
位元組位 含義
0 右邊Shift鍵狀態
1 左邊Shift鍵狀態
3 Ctrl鍵狀態
4 Alt鍵狀態
5 ScrollLock鍵狀態
6 NumLock鍵狀態
7 CapsLock鍵狀態
8 Insert鍵狀態
方向鍵可以用下面的程序啊!
#define Key_Up 0x4800/*up*/
#define Key_Down 0x5000/*down*/
#define Key_Right 0x4d00/*right*/
#define Key_Left 0x4b00/*left*/
int key=bioskey(0);
switch(key)
{
case Key_Up:/*code*/
case Key_Down:/*code*/
case Key_Left:/*code*/
case Key_Right:/*code*/
}
『陸』 c語言中如何從鍵盤上得到數字
用scanf語句。
其實scanf是一個函數,格式是:
1、輸入整型數:
scanf("%d",&a);
式中%d是整型數的格式符,a是用int a;聲明過的整型數變數名。
2、輸入浮點數:
scanf("%f",&b);
式中%f是浮點數的格式符,b是用float b;聲明過的浮點數變數名。
然後,系統就會等待你從鍵盤上輸入一個數字。輸入數字完畢按回車鍵結束輸入。
不知道是不是解決了你的問題,如果沒有請留言。
『柒』 c語言編程錯誤從鍵盤輸入x的值,求y的值並輸出 {x的平方x<=0 Y= {x-5 0<x<3 {3x+1, x>=3
#include<stdio.h>
voidmain(){floatx,y;
printf("請輸入x的值");scanf("%f",&x);
if(x<=0)y=x*x;
elseif(x<3)y=x-5;//執行到這里x肯定不是小於等於0的,因為這是x<0判斷的else
elsey=3*x+1;//不用說肯定x大於等於3
printf("%d ",y);//前面分情況計算y,這里輸出一次即可
}
『捌』 C語言從鍵盤輸入任意的10個整數,從中找出最大值和最小值並輸出
1、找出最大值並輸出的源代碼如下:
#include <stdio.h>
int main() {
int array[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 0};
int loop, largest;
largest = array[0];
for(loop = 1; loop < 10; loop++) {
if( largest < array[loop] )
largest = array[loop];
}
printf("最大元素為 %d", largest);
return 0;
}
2、找出最小值並輸出的源代碼如下:
#include <stdio.h>
int main() {
int array[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 0};
int loop, largest;
largest = array[0];
for(loop = 1; loop < 10; loop++) {
if( largest < array[loop] )
largest = array[loop];
}
printf("最小元素為 %d", largest);
return 0;
}
(8)c語言不從鍵盤錄入怎麼得出值擴展閱讀
1、#include:是包含頭文件命令,聲明在這個地方插入別的文件中的代碼。
2、#define 標識符 被標識符代表的字元串:其中,「define」為宏定義命令,「標識符」為所定義的宏名。
3、#if #else #endif:是條件編譯命令,加上符號「#」的作用是:#if是編譯器在編譯代碼時完成的,if是在程序在運行時完成的,兩者的執行時期不同。
『玖』 c語言程序:從鍵盤輸入一非負整數n,並求出n!的值
#include<stdio.h>
void main()
{int n,t,i;
printf("請輸入非負數n");
scanf("%d",&n);
t=1;
for(i=1;i<=n;i++)
t=t*i;
printf("N!=%d",t);
}//很欠沒有用C語言了,呵呵!!本來可以用函數的,10分有點少就不寫了,應調試能夠通過的,但輸的整數不能太大
『拾』 C語言中,輸入必須從鍵盤上么,
因為他就是需要你輸入值啊,每個值一開始初始化定義的時候就是0也是一個值,如果直接定義其它數值的話,那麼初始化後改值就直接為定義值。可能會影響到改變了在程序中得應用