Вывести на экран строки в которых содержатся цифры - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Прошу помощи в написании программы. Задание: Сформировать и вывести на экран текстовый файл в котором исключить слова "while", "if", "for". Вывести на экран строки в которых содержатся цифры и в конце строки дописать их сумму. вот текст с которым и нужно работать. Назовем его lab3
#include<stdio.h>
#include<stdlib.h>
#define n 5
void bul(int a[n][n]);
void waw(int a[n][n]);
void main(void)
{
 
int i, j, k;
int a[n][n] ;
system("cls");
 for (i = 0; i < n; i++)
  {
  for (j = 0; j < n; j++)
    {
    printf("a[%d][%d] =", i+1, j+1);
    scanf("%d", &a[i][j]);
    }
  }
printf("old array\n");
for (i = 0; i < n; i++)
  {
  for (j = 0; j < n; j++)
    printf ("%5d", a[i][j]);
  printf("\n");
  }
bul(a);
printf("\nnew array\n");
for (i = 0; i < n; i++)
  {
  for (j = 0; j < n; j++)
    {
   printf ("%5d", a[i][j]);
    }
  printf("\n");
 
}
waw(a);
 
getchar();getchar();}
void bul(int a[ ][n])
{
 int i, k, j, c,x;
   for(j = 0; j < n; j++)
     {
     for(i = 0; i<n-1; i++)
       {k=i;
    x=a[i][j];
    for(c=i+1; c<n; c++)
      {
       if(a[ c ][j]<x)
        {
         k=c;
         x=a[c ][j];
         a[k][j]=a[i][j];
         a[i][j]=x;
        }
      }
    }
 }
}
void waw (int a[n][n])
{
int i,j; double f[n]; double F;
F=0;
for (i=0; i<n-1; i++)
{
f[i]=1;
for (j=i+1; j<n; j++)
{
f[i] = f [i] * a [i][j];
}
F= F+ f[i];
printf("f[%d]=%lf", i+1, f[i]);
printf("\n");
}
printf("f[%d]- ne isnue, tomy bydemo vvazhatu =0",n);
printf("\n");
F=F/n;
printf("F=%lf", F);
}
очень прошу помочь, так как у самого не получается никак уже 2-й день(. Заранее спасибо!
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
FILE *fp;
void main()
{
int s,c;
  fp=fopen("lab3.c","r");
 while((s,c=getc(fp))!= NULL) 
{     
FILE *fp;
 if (c=='while') s=" ";
 if (c=='if') s=" ";
 if (c=='for') s=" ";
 if (c=='while'||c=='if'||c=='for'|) fputs(s,fp),printf("%s",s);
 else putc(c,fp),printf("%c",c);
}
То что я пробовал написать сам, но не до конца , все же НЕ работает
P.S я не прошу написать всю прогу а хотяб немножко или подправить ту что выше
плз помогите

Решение задачи: «Вывести на экран строки в которых содержатся цифры»

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
#define n 101
void word(char *str);
FILE *fp;
FILE *fp1;
void main ()
 {
  char str[n];
  int kf=0, ki=0,i=0;;
  fp=fopen ("MASS.C","r");
  fp1=fopen("result1.txt","w+");
  while (fgets(str,n,fp) != NULL)
  {
  word(str);
  i=0;
  while(str[i]!='\0')
 {
  if (str[i]=='f' && str[i+1]=='o' && str[i+2]=='r') kf++;
  else if (str[i]=='i' && str[i+1]=='f') ki++;
   i++;   
 }
  }
  fprintf(fp1,"kil fof=%d; kil if=%d",kf,ki);
  fclose(fp);
  fclose(fp1);
 }
 
void word(char *str)
{
 int i=0,j=0;
 char a[n];
 while(str[i]!='\0')
 {
  if (str[i]=='{') {fprintf(fp1,"Begin \n"); j++; break;}
  else if (str[i]=='}') {fprintf(fp1,"End \n"); j++; break;}
       else j++;
 
 i++;
 }
 if (j==i) fprintf(fp1,"%s",str);
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 3.769 из 5
Похожие ответы