‘壹’ c语言编写程序用于16LED显示屏键盘输入汉字LED屏输出
#include<reg52.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
/*下面是引脚连接关系*/
sbit AD_EOC =P2^4; /*转换完成指示*/
sbit AD_IOCLK =P2^3; /*时 钟*/
sbit AD_DATIN =P2^2; /*数据入*/
sbit AD_DATOUT=P2^1; /*数据出*/
sbit AD_CS =P2^0; /*片 选*/
uint ad_result; /*存各模拟通道的数据*/
sbit E=P2^7;
sbit rs=P2^6;
sbit rw=P2^5;
sbit S1=P3^0;
sbit S2=P3^1;
sbit S3=P3^2;
sbit S4=P3^3;
sbit S5=P3^4;
sbit S6=P3^5;
sbit S7=P3^6;
sbit S8=P3^7;
sbit S9=P1^5;
sbit S10=P1^6;
sbit S11=P1^7;
sbit S12=P1^0;
uchar code zengzhen[]={"wuhanligongdaxue"};
uchar code zengzhen1[]={"Cha : mV "};
uint zengzhen2[8];
uint i,j;
uchar sum;
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void write_com(uchar com)
{
rs=0;
rw=0;
P0=com;
E=0;
delay(1);
E=1;
delay(1);
E=0;
}
void write_date(uchar date)
{
rs=1;
rw=0;
P0=date;
E=0;
delay(1);
E=1;
delay(1);
E=0;
}
void init()
{
E=0;
write_com(0x38);
write_com(0x0c);
write_com(0x06);
write_com(0x01);
}
/*启动A/D转换,并读取上次转换结果*/
uint read2543(CHN)
{
uchar i,temp;
uint read_ad_data = 0;
CHN=CHN<<4;
AD_IOCLK=0;
AD_CS=1;
AD_CS=0;
temp=CHN;
for(i=0;i<12;i++)
{
read_ad_data=read_ad_data<<1;
if((temp&0x80)!=0){AD_DATIN=1;}
else{AD_DATIN=0;}
if(AD_DATOUT){read_ad_data=read_ad_data+1;}
AD_IOCLK =1;
_nop_();_nop_();_nop_();_nop_();
AD_IOCLK =0;
_nop_();_nop_();_nop_();_nop_();
temp=temp<<1;
}
AD_CS=1;
read_ad_data=read_ad_data&0x0fff;
return(read_ad_data);
}
void display(uint k,uchar add)
{
uchar a,b,c,d;
float j=k*4.444/4.095;
uint i=j/1;
a=i/1000;
b=i%1000/100;
c=i%100/10;
d=i%10;
write_com(add);
write_date(a+0x30);
write_date(b+0x30);
write_date(c+0x30);
write_date(d+0x30);
delay(300);
}
/************显示程序*************/
/*主 程序*/
void scan()
{
if(S1==0)
{
delay(5);
if(S1==0)
{
while(!S1);
sum=1;
}
}
if(S2==0)
{
delay(5);
if(S2==0)
{
while(!S2);
sum=2;
}
}
if(S3==0)
{
delay(5);
if(S3==0)
{
while(!S3);
sum=3;
}
}
if(S4==0)
{
delay(5);
if(S4==0)
{
while(!S4);
sum=4;
}
}
if(S5==0)
{
delay(5);
if(S5==0)
{
while(!S5);
sum=5;
}
}
if(S6==0)
{
delay(5);
if(S6==0)
{
while(!S6);
sum=6;
}
}
if(S7==0)
{
delay(5);
if(S7==0)
{
while(!S7);
sum=7;
}
}
if(S8==0)
{
delay(5);
if(S8==0)
{
while(!S8);
sum=8;
}
}
if(S9==0)
{
delay(5);
if(S9==0)
{
while(!S9);
sum=9;
}
}
if(S10==0)
{
delay(5);
if(S10==0)
{
while(!S10);
sum=10;
}
}
if(S11==0)
{
delay(5);
if(S11==0)
{
while(!S11);
sum=11;
}
}
if(S12==0)
{
delay(5);
if(S12==0)
{
while(!S12);
sum=12;
}
}
}
void fw()
{
write_com(0x80+0x40+2);
for(j=0;j<12;j++)
{
write_date(zengzhen1[j]);
delay(5);
}
}
void main(void)
{
uchar h ;
uint s=0;
init();
delay(23);
write_com(0x80);
for(j=0;j<16;j++)
{
write_date(zengzhen[j]);
delay(5);
}
write_com(0x80+0x40+2);
for(j=0;j<12;j++)
{
write_date(zengzhen1[j]);
delay(5);
}
while(1)
{
if(sum==12)
{
scan();
if(sum!=12)
{
init();
delay(23);
write_com(0x80);
for(j=0;j<16;j++)
{
write_date(zengzhen[j]);
delay(5);
}
write_com(0x80+0x40+2);
for(j=0;j<12;j++)
{
write_date(zengzhen1[j]);
delay(5);
}
}
}
if(sum==11)
{
scan();
if(sum!=11)
{
fw();
}
}
scan();
if(sum==1)
{
for(h=0;h<15;h++)
{
ad_result=read2543(0);
while(!AD_EOC);
s+=ad_result;
}
s=s/15;
write_com(0x80+0x40+5);
write_date(0+0x30);
display(s,0x80+0x40+7);
s=0;
}
if(sum==2)
{
for(h=0;h<15;h++)
{
ad_result=read2543(1);
while(!AD_EOC);
s+=ad_result;
}
s=s/15;
write_com(0x80+0x40+5);
write_date(1+0x30);
display(s,0x80+0x40+7);
s=0;
}
if(sum==3)
{
for(h=0;h<15;h++)
{
ad_result=read2543(2);
while(!AD_EOC);
s+=ad_result;
}
s=s/15;
write_com(0x80+0x40+5);
write_date(2+0x30);
display(s,0x80+0x40+7);
s=0;
}
if(sum==4)
{
for(h=0;h<15;h++)
{
ad_result=read2543(3);
while(!AD_EOC);
s+=ad_result;
}
s=s/15;
write_com(0x80+0x40+5);
write_date(3+0x30);
display(s,0x80+0x40+7);
s=0;
}
if(sum==5)
{
for(h=0;h<15;h++)
{
ad_result=read2543(4);
while(!AD_EOC);
s+=ad_result;
}
s=s/15;
write_com(0x80+0x40+5);
write_date(4+0x30);
display(s,0x80+0x40+7);
s=0;
}
if(sum==6)
{
for(h=0;h<15;h++)
{
ad_result=read2543(5);
while(!AD_EOC);
s+=ad_result;
}
s=s/15;
write_com(0x80+0x40+5);
write_date(5+0x30);
display(s,0x80+0x40+7);
s=0;
}
if(sum==7)
{
for(h=0;h<15;h++)
{
ad_result=read2543(6);
while(!AD_EOC);
s+=ad_result;
}
s=s/15;
write_com(0x80+0x40+5);
write_date(6+0x30);
display(s,0x80+0x40+7);
s=0;
}
if(sum==8)
{
for(h=0;h<15;h++)
{
ad_result=read2543(7);
while(!AD_EOC);
s+=ad_result;
}
s=s/15;
write_com(0x80+0x40+5);
write_date(7+0x30);
display(s,0x80+0x40+7);
s=0;
}
if(sum==9)
{
for(h=0;h<15;h++)
{
ad_result=read2543(8);
while(!AD_EOC);
s+=ad_result;
}
s=s/15;
write_com(0x80+0x40+5);
write_date(8+0x30);
display(s,0x80+0x40+7);
s=0;
}
if(sum==10)
{
for(h=0;h<15;h++)
{
ad_result=read2543(9);
while(!AD_EOC);
s+=ad_result;
}
s=s/15;
write_com(0x80+0x40+5);
write_date(9+0x30);
display(s,0x80+0x40+7);
s=0;
}
if(sum==11)
{
for(h=0;h<15;h++)
{
ad_result=read2543(10);
while(!AD_EOC);
s+=ad_result;
}
s=s/15;
write_com(0x80+0x40+5);
write_date(1+0x30);
write_date(0+0x30);
write_date(':');
display(s,0x80+0x40+8);
write_date('m');
write_date('V');
s=0;
}
if(sum==12)
{
/*delay(100);
for(h=0;h<8;h++)
{
ad_result=read2543(h);
while(!AD_EOC);
ad_result=read2543(h);
zengzhen2[h]=ad_result;
}
*/
zengzhen2[0]=read2543(0);
while(!AD_EOC);
display(zengzhen2[0],0x80);
zengzhen2[1]=read2543(1);
while(!AD_EOC);
display(zengzhen2[1],0x84);
zengzhen2[2]=read2543(2);
while(!AD_EOC);
display(zengzhen2[2],0x88);
zengzhen2[3]=read2543(3);
while(!AD_EOC);
display(zengzhen2[3],0x8c);
zengzhen2[4]=read2543(4);
while(!AD_EOC);
display(zengzhen2[4],0x80+0x40);
zengzhen2[5]=read2543(5);
while(!AD_EOC);
display(zengzhen2[5],0x80+0x40+4);
zengzhen2[6]=read2543(6);
while(!AD_EOC);
display(zengzhen2[6],0x80+0x40+8);
zengzhen2[7]=read2543(7);
while(!AD_EOC);
display(zengzhen2[7],0x80+0x40+12);
}
}
}
望采纳谢谢
‘贰’ 编写c语言程序,对于从键盘上输入的一行字符,该程序能将其依次显示在屏幕上.
#include<stdio.h>
#include<string.h>
intmain(){
chars[100];
gets(s);
printf("%s",s);
return0;
}
‘叁’ C语言编程题:从键盘输入一个小写字母,在屏幕上显示其对应的大写字母
#include<stdio.h>
int main()
{
char ch;
printf("请输入一个小写字母:");
scanf("%c",&ch);
ch=ch-32;
printf("大写字母是:%c ",ch);
return 0;
}
可以加一个判断
#include<stdio.h>
int main()
{
char ch;
printf("请输入一个小写字母:");
scanf("%c",&ch);
while(!(ch>='a'&&ch<='z'))
{printf("输入错误,请重新输入一个小写字母!");
scanf("%c",&ch);
}
ch=ch-32;
printf("大写字母是:%c ",ch);
return 0;
}
文件输入/输出
在C语言中,输入和输出是经由标准库中的一组函数来实现的。在ANSI C中,这些函数被定义在头文件;中。
标准输入/输出
有三个标准输入/输出是标准I/O库预先定义的:
stdin标准输入
stdout标准输出
stderr输入输出错误
以上内容参考:网络-c语言
‘肆’ C语言题`任意从键盘上输入一个字符`并把所输字符在屏幕上输出
#include"stdafx.h"
#include<math.h>
#include<malloc.h>
intmain(intargc,char*argv[])
{
inti;
char*pTemp;
i=0;
pTemp=(char*)malloc(100);
printf("输入字符,按q结束 ");
while(1)
{
printf("请输入字符:");
gets(pTemp);
if(*pTemp=='q')
{
break;
}
printf("你输入的字符:%s ",pTemp);
i++;
}
return0;
}
‘伍’ c语言在屏幕上输出下面的结果,输出数据的行数通过键盘输入,要求在5~20行之间。
#include "stdio.h"
int main(){
int n,i,j,k,t;
printf("请输入n(int 4<n<21)... n=");
if(scanf("%d",&n)==1 && n>4 && n<21){
for(k=3,i=0;i<n;i++,k+=3){
for(t=k,j=0;j<4;j++,t+=2)
printf("%3d",t);
putchar(' ');
}
}
else
printf("输入错误,退出... ");
return 0;
}
执行结果:
‘陆’ C语言程序,键盘输入你的名字和学号在屏幕显示: Hello,名字 你的学号是,xxx
1、打开Codeblock。
‘柒’ 简单的C语言编程问题。 题一:从键盘输入字符串“How are you”,并将其显示在屏幕上。 下
#include<stdio.h>
intmain()
{chars[200];
gets(s);
puts(s);
return0;
}
#include<stdio.h>
intmain()
{inti,n;
printf("要输入几个字符串:");
scanf("%d%*c",&n);
chars[n][80];
for(i=0;i<n;i++)
gets(s[i]);
printf("输入的字符串是: ");
for(i=0;i<n;i++)
puts(s[i]);
return0;
}
‘捌’ C语言编程:从键盘输入两个实数后,屏幕显示菜单如下内容
#include<stdio.h>
char *Text[] = {"退出", "两数之和",
"两数之差", "两数乘积",
"两数相乘之商"};
int main(void)
{
double n1, n2, result;
int choice;
printf("请输入两个实数:");
scanf("%lf%lf", &n1, &n2);
while(1)
{
for(int i = 1; i < sizeof(Text)/sizeof(char *); i++)
printf("%d.%s%s ", i, "输出", Text[i]);
printf("5.%s ", Text[0]);
printf("请输入你的选择: ");
scanf("%d", &choice);
if(choice == 5)
{
printf("退出关闭程序 ");
return 0;
}
if(choice < 0 || choice > 4)
{
printf("抱歉,查无此选项 ");
continue;
}
switch(choice)
{
case 1:
{
result = n1 + n2;
break;
}
case 2:
{
result = n1 - n2;
break;
}
case 3:
{
result = n1 * n2;
break;
}
case 4:
{
result = n1 / n2;
break;
}
}
printf("%s%s:%.2lf ", Text[choice], "为", result);
}
return 0;
}
‘玖’ C语言怎么把刚在屏幕上输入的数据马上显示出来
话不多说,直接写代码,按照你说的我理解为:输入没有限制的字符数,输入完了用屏幕显示出来,每一个字符中间都要有一个空格作为间隔,对吗?,代码如下:
#include<stdio.h>
void
main()
{
int
x,y=0;
char
*a="123456";//在这个“”里面存放你想输出的字符,就可以了,接下来用for输出。
for(x=0;a[y]!=0;x++)
{
printf("%c
",a[y]);
y++;
}
getchar();
}