Gtk 屏幕截图并显示(Linux C语言)

Gtk 屏幕截图并显示(Linux C语言),第1张

使用 gtk 截图后不需要保存文件,直接通过内存中的数据进行显示。
首先安装 gtk :

然后编写应用程序:

使用以下命令进行编译:

#include  <stdioh>

/这里演示4位同学3门成绩,你可以改动/

#define M 4

#define N 3

void chengji(int (a)[N],int s,int m,int n){

int i,j;

for(i=0;i<N;i++)

for(j=0;j<M;j++){

s[i]+=a[j][i];

if(a[j][i]>m[i]) m[i]=a[j][i];

if(a[j][i]<n[i]) n[i]=a[j][i];

}

}

int main(){

int i,b=0,c,m,n,s[M][N],sum[N]={0},max[N]={0},min[N];

for(i=0;i<N;i++) min[i]=900;

for(i=0;i<M;i++){

b=0;

printf("请输第%d号码同学的%d门成绩:",2016000+i+1,N);

while(b<N){

scanf("%d",s[i]+b);

if(s[i][b]<0) return 44;

if(s[i][b]>100) return 44;

b++;

}}

chengji(s,sum,max,min);

for(i=0;i<N;i++){

printf("第%d门平均成绩:%lf ",i+1,100sum[i]/M);

}

printf("\n");

for(i=0;i<N;i++){

printf("第%d门总分:%d ",i+1,sum[i]);

}

printf("\n");

printf("\n");

return 0;

}

输出到文件的话,按照指定格式,写入文件即可。

电脑型号:微星 GF63 Thin 9SC

系统版本:Microsoft Windows 10 

文本文件

1、打开电脑上要读取的文本文件。

2、打开文本后,点击文本左上角的文件按钮。

3、点击另存为。这样就会保存本来的这个文本文件,生成一个新的c文件。

4、点击保存类型-对应的下拉按钮。

5、选择C source file(c)。这个就是我们需要转换成C格式的后缀。

6、选择后,点击保存。保存后我们即可正常读取该文件了。

C语言中如何以一个指定字符结束输入并输出结果,而不用按回车 思路:可以利用while循环依次输入,并判断输入的字符是否是结束字符,如果时就结束输入并输出输入的字符。

参考代码:
#include<stdioh>int main(){ int n=0,i; char a[100]; while(scanf("%c",&a[n++])){ if(a[n-1]=='#')输入#就结束输入 break; } for(i=0;i<n-1;i++) printf("%c ",a[i]); printf("\n"); return 0; } /输出:qewq#afq e w q /

VBA如何实现按回车键输入一个指定字符
定义按钮txtA
Private Sub txtA_KeyUp(ByVal KeyCode As MSFormsReturnInteger, ByVal Shift As Integer)
If KeyCode = 13 Then
txtAText = txtAText + "A"
End If
End Sub
c语言如何做到输入回车换行而不是输出结果
拍入Enter健时, c语言 通常 略去 回车,而只取用 换行键。
一定要输入 回车,你可以用输入 ASCII 值 13 代替。
例如,你拍入数值13和Enter健,用下面程序,则 s[0] 读到回车,s[1]读到换行 :
char s[10];
scanf("%d",&s[0]);
s[1]=getchar();
printf("%c %c\n",s[0],s[1]);
printf("%02x %02x",s[0],s[1]); 输出它们的16进制ASCII码值 0d 0a
c语言为什么输入数字按回车键得不出结果
估计是你的代码有问题,建议把问题说详细一点,顺便发一下代码或者截图。
c语言中先输出kb个空格,在输出n个指定字符
for (i=0;i<kb;i++) printf(" "); 输出kb个空格,不换行
for (i=0;i<n;i++) printf"%c", z[i]); 输出n个指定字符, 假定字符已存于 字符数组 z
例如:
int i,kb=10,n=10;
char z[10] = {'a','b','c','d','9','8','7','6','Y','Z'};
for (i=0;i<kb;i++) printf(" "); 输出kb个空格,不换行
for (i=0;i<n;i++) printf"%c", z[i]);
c语言中如何在读入字符串时如何遇到指定字符结束?
标准C中没有提供这样的函数,可以自定义一个这样的函数,以实现getline()函数的功能。参考代码如下:
int get_str( char s, int size, const char ch='\n' ) 如果不输入第三个参数,默认为回车符{ int i; for( i=0;i<size-1;i++ ) { s[i]=getchar(); 读入一个字符 if ( s[i] == ch ) 遇到指定字符,结束输入 break; } s[i]='\0'; 字符串结束符 return i; 返回读入字符串数据的长度}void main(){ char str[10]; get_str( str, sizeof(str), '#' ); 以#结束 printf("input is :%s\n", str ); fflush(stdin); 清除缓存中的残余数据 get_str( str, sizeof(str) ); 以回车结束 printf("input is :%s\n", str );}

C语言:编写一个程序,接受一个用户输入的一行字符,按回车结束
int main()
{
char str[100],p;
int cout[4]={0};
scanf("%[^\n]",&str);
p=str;
while(p)
{
if((p>='A'&&p<='Z')||(p>='a'&&p<='z'))
cout[0]++;
else if(p==' ')
cout[1]++;
else if(p>='0'&&p<='9')
cout[2]++;
else
cout[3]++;
p++;
}
printf("\nletter=%d,blank=%d,number=%d,other=%d\n",cout[0],cout[1],cout[2],cout[3]);
return 0;
}
c++怎么循环输入,并且按回车结束输入
一般一次输入一行。当用户某次输入某个特殊的字符串时,结束循环
用C语言编写程序:从键盘输入一串字符,按回车键后结束,最后将字符串在屏幕上输出。
#include<stdioh>
void main()
{
char p[20];
printf("\n Please input some chars:");
scanf("%s",p);
printf("\n You inputed: %s\n",p);
getchar();
}
注意,该程序最多可输入20个字符,如果要更多,自己把p[20];里的数字改得列大就行了
C语言中输入一个字符串已@为结束符
#include<stdioh>
void main()
{ int i;
char a[100];
for(i=0;i<100;i++)
{
if(getchar()!='@'
a[i]=getchar();
else break;
}
}

您提供的程序存在语法错误,应当无法正常编译执行。因此,该程序不存在输出结果。请注意在编写程序时确保代码的正确性和完整性,以避免出现问题。以下是所给程序的修正版本:
#include <stdioh>
int funct (int a) {
int b = 0;
static int c = 3;
a = (c++, b++);
return (c + a);
}
int main() {
int a = 2, i, k;
for (i = 0; i < 2; i++) {
k = funct(a++);
printf("%d\n", k);
}
return 0;
}
经过修正后的程序,其输出结果应为:
复制代码4
5
此结果是由于函数funct内的静态变量c的初始值为3,并且每次调用funct时都会先将c的值加1,然后将a设置为b(等于0)的值。因此,第一次调用funct(2)时,c的值变为4,a的值为0+3=3,因此k的值为4+3=7;第二次调用funct(3)时,c的值变为5,a的值为0+4=4,因此k的值为5+4=9。最终输出的结果分别为4和5。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12781412.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-28
下一篇 2023-05-28

发表评论

登录后才能评论

评论列表(0条)

保存